我有文件夹“ / home / user / project1 ”,其中包含以下docker-compose:
version: '3.3'
services:
mysql:
image: docker-user/test-mysql
environment:
- MYSQL_ROOT_PASSWORD=secret
- MYSQL_DATABASE=test
- MYSQL_USER=test
- MYSQL_PASSWORD=secret
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
volumes:
- db:/var/lib/mysql
我在“ / home / user / project2 ”中创建了一个新项目,其中包含以下docker-compose:
version: '3.3'
services:
mysql:
image: docker-user/mytestdb-mysql
environment:
- MYSQL_ROOT_PASSWORD=mysecretdb
- MYSQL_DATABASE=mytestdb
- MYSQL_USER=mytestdb
- MYSQL_PASSWORD=mysecretdb
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
volumes:
- db:/var/lib/mysql
执行命令 docker-compose up -d 后,我无法使用新密码和用户名在 project2 中登录我的mysql。但是,如果我使用 project1 的旧密码,它可以工作!
为什么我不能使用 project2 中的新密码和用户名登录?
我在 project1 和 project2 中使用相同的图像: mysql:5.7.22
最佳答案
您是否将“/ home / user / project1 / db”文件夹复制到“” / home / user / project2”?
由于已安装,因此凭据将与project1相同。
在撰写文件中更改/注释音量部分,并对其进行一次测试。
关于mysql - 如何正确处理Docker镜像?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53570107/