Docker-我的MySQL数据库应该位于容器内部还是外部?
我正在docker上设置我的第一台生产服务器,但我不确定我的MSQL数据库应该放在哪里。数据库应该位于容器外部还是内部?我以前读过一些文章/帖子,说它应该在外面,所以如果你必须启动一个新的容器或图像,不会有任何改变,但我不确定这是否正确。将其置于容器内部或外部是否存在速度/性能差异?关于性能:Docker容器默认使用虚拟网络接口,请参阅。这只是一个轻微的速度开销。不过,根据您的预期负载,您可能希望将DB容器绑定到主机网络,或者根本不将DB dockerize 关于数据持久性:如果您正在使用数据,则数据将位于容器外部,也可以由任何新容器装入。不用担心 关于是否为DBs使用容器(我的意见):目前流行将无状态和可互换的应用程序容器化,这意味着您可以简单地抛弃过时的服务,用新的容器替换它们。虽然这对于频繁更新的微服务来说很有意义,但对于相对较长的服务(如数据库),您真的需要它吗?是的,Docker仍然有助于包含依赖项并更快地发布内容,但也有其他选择,如Ansible配置的VM。最后,这取决于什么最适合您的用例Docker-我的MySQL数据库应该位于容器内部还是外部?,mysql,database,docker,Mysql,Database,Docker,我正在docker上设置我的第一台生产服务器,但我不确定我的MSQL数据库应该放在哪里。数据库应该位于容器外部还是内部?我以前读过一些文章/帖子,说它应该在外面,所以如果你必须启动一个新的容器或图像,不会有任何改变,但我不确定这是否正确。将其置于容器内部或外部是否存在速度/性能差异?关于性能:Docker容器默认使用虚拟网络接口,请参阅。这只是一个轻微的速度开销。不过,根据您的预期负载,您可能希望将DB容器绑定到主机网络,或者根本不将DB dockerize 关于数据持久性:如果您正在使用数据,
- 建立和维护完善的备份和恢复策略和程序
- 实施和维护数据库安全(创建和维护用户和角色,分配权限)
- 执行数据库调优和性能监视
- 执行应用程序优化和性能监视
- 建立和维护文档和标准
- 规划增长和变化(容量规划)