mysql - 如何使用 docker compose 和数据库服务处理持续部署?

标签 mysql docker-compose continuous-deployment circleci

我在弄清楚如何处理数据库服务的部署更改时遇到了一些麻烦。现在,就这么简单:

docker-compose up -d

如果配置发生更改,它会重建容器。对于我的网络服务(节点)来说这不是问题,因为它没有任何状态。我几乎可以删除所有内容,然后再次将其恢复,并且不会丢失任何内容。

我的数据库服务正在不断注册新数据,这显然很重要,所以我不能就废弃它。据我了解,每次构建图像​​时,体积都是不同的。所以每次重建服务时我都会丢失所有数据。

我该如何应对方案变更?或者我应该手动更新服务?

最佳答案

您可以向容器添加数据卷。在这种情况下,您可以在 docker-compose.yml 中添加“volumes”属性,如下所示:

volumes:
  - /opt/mysql/data:/var/lib/mysql

然后数据将被存储在主机上的/opt/mysql/data中。

关于mysql - 如何使用 docker compose 和数据库服务处理持续部署?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44103844/

相关文章:

php - 如何保存多个表单?

mysql - 将 mysql 导入正在运行的 docker 容器中不起作用

postgresql - 连接 pgbouncer 和使用 docker 运行的 postgres

Jenkins:如何在 git 标签上触发管道

java - 此正则表达式的 MySQL SQL REGEX 是什么

php - where 和 while 循环似乎不起作用

azure-devops - 如何通过部署作业定位 Azure YAML 管道中的环境?

docker build 使用注册表中以前的构建缓存

php - 如何将 mySQL 查询中的 MAX 值分配给 PHP 变量?

docker - 容器名称已被容器使用 - gitlab ci