我打算将应用程序堆栈迁移到Docker。让我描述一下我当前正在使用的服务:
我的问题是关于数据库的。
在这种情况下,运行MariaDB的正确方法是什么?
--link
命令的run
选项将我的容器链接到它吗? 第一种选择有什么缺点吗?
TeamSpeak docker container使用第二个选项,这就是让我问自己有关运行数据库的正确方式的问题,但是我特别想将所有服务打包在自己的镜像中。
最佳答案
Docker哲学:将您的应用程序拆分为microservices
,并为每个microservice
使用一个容器。
在您的情况下,我建议使用MariaDB
容器,使用官方(Library
)镜像可以使更新管理更加轻松,但是可以随意使用自定义镜像。
一个HAProxy
容器,一个nginx
容器和一个nodejs
容器。
通过这种方式,您可以将应用程序划分为microservices
,并且可以在隔离的环境中更轻松地对其进行升级,管理和故障排除。
如果您正在考虑通过docker将应用程序交付给最终用户,则可以使用简单的docker-compose
文件轻松启动所需的容器。
关于mysql - 使用MySQL/MariaDB数据库创建Docker容器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40603395/