我正在尝试Dockerize和Open Source这个我在大学二年级创建的项目,该项目使用MariaDB,phpMyAdmin和PHP/Yii Framework。Docker卷MariaDB Windows
我的目标是让它准备好仅使用简单的 docker-compose up
命令。
我设法让phpMyAdmin和数据库之间的连接工作,现在我被困在试图让Docker有相对路径到数据库卷,以使其一致。
这里是我有一个关于体积安装:
volumes:
- './database/mysql/:/var/lib/mysql'
这是存储项目中的数据库文件,然后我可以在.gitignore
问题忽略这些文件是当我有这个配置运行docker-compose up
我得到:
Invalid volume specification: 'C:\Users\MySelf\coding\my_app\database\mysql:/var/lib/mysql:rw'
至于主持人,我使用与码头工人工具箱Windows,但我想docker-compose.yml
为w不管操作系统如何。
我已经看到过类似的其他问题,但是他们的错误来自于Windows上绝对路径的问题,我不在寻找。
编辑:添加正确的最终泊坞窗,compose.yml,希望它可以帮助
version: '2'
services:
web_db:
build: ./database/mysql
command: "mysqld --innodb-buffer-pool-size=20M"
volumes:
- ./database/mysql/data/:/var/lib/mysql
- ./database/mysql/initDB/create_tables.sql:/docker-entrypoint-initdb.d/create_tables.sql
environment:
MYSQL_ROOT_PASSWORD: 'YOURPASSWORD'
MYSQL_DATABASE: 'support-technique'
MYSQL_ROOT_HOST: '172.17.0.1'
ports:
- "3306:3306"
container_name: web_db
web:
build: .
depends_on:
- web_db
links:
- web_db:db
ports:
- "80:80"
phpmyadmin:
image: phpmyadmin/phpmyadmin
depends_on:
- web_db
links:
- web_db:mysql
ports:
- "8181:80"
environment:
PMA_HOST: mysql
但'/ var/lib/mysql'这是一个Linux路径! – Hackerman
@Hackerman'/ var/lib/mysql'是Docker容器中不在我的主机上的路径 – Daniel