【发布时间】:2019-10-19 06:13:30
【问题描述】:
我想从我现在发现 docker 几天开始。我已经设置了一个带有堆栈的 docker-compose.yml,我在本地机器上运行该堆栈进行开发。在我的 docker-compose.yml 中,我还创建了一个带有卷的 mysql 容器,该卷将我的项目中的一个文件夹连接到容器中的 mysql 文件夹。
项目结构:
Project
|-- project folder 1
|-- project folder 2
|-- project folder 3
|-- docker
| `-- mysql
|-- file1
|-- file2
`-- docker-compose.yml
容器:
mysql:
image: mysql:5.7
ports:
- "3306:3306"
restart: always
environment:
MYSQL_DATABASE: xxx
MYSQL_USER: xxx
MYSQL_PASSWORD: xxx
MYSQL_ROOT_PASSWORD: xxx
networks:
- network-woo
volumes:
- ./docker/mysql:/var/lib/mysql
我将这个项目推送到 git。一个叫做“新手”的魔鬼在我肩上告诉我“太好了!这样你每次推送时都将数据库保存在 git repo 中”。虽然有一个叫“gutfeeling”的天使告诉我要小心!这可能会出错,但我不确定是什么。
我的问题是,这是否是一种安全的方法,以及是否有人可以预见到这种方法将来会出现任何问题。我知道,如果我将这个项目放在实时服务器上,并将 git repo 拉到该服务器上,它将用本地数据库中所做的更改覆盖数据库,仍然在为那个解决方案工作。
提前致谢,
布拉姆
【问题讨论】:
-
我想知道完全相同的事情。显然最好的是保留文件夹结构但不保留数据
标签: mysql git docker docker-compose