我的docker-compose.yml是:
version: '2'
services:
joomla:
image: joomla
links:
- joomladb:mysql
volumes:
- "./www:/var/www/html"
ports:
- 9010:80
environment:
MYSQL_PORT_3306_TCP: 3306
JOOMLA_DB_HOST: joomladb
JOOMLA_DB_PASSWORD: "example"
JOOMLA_DB_USER: "root"
JOOMLA_DB_NAME: "joomla"
joomladb:
image: mysql:5.6
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: "example"
MYSQL_DATABASE: "joomla"
volumes:
- "./db:/var/lib/mysql"
phpmyadmin:
image: phpmyadmin/phpmyadmin
ports:
- 9011:80
environment:
MYSQL_ROOT_PASSWORD: "example"
MYSQL_DATABASE: "joomla"
container_name: phpmyadmin
/ var / www / html安装在主机(dir www)中,包含所有joomla文件。 但是,甚至没有创建主目录./db。
但是如果我进入db容器,目录不是空的:
root@docker1:/home/juanda/soplaelcierzo# docker exec -t -i 959 /bin/bash
root@95926c23f49a:/# cd /var/lib/mysql/
root@95926c23f49a:/var/lib/mysql# ls
auto.cnf ib_logfile0 ib_logfile1 ibdata1 joomla joomladb mysql performance_schema
答案 0 :(得分:0)
我收到的警告我没看到:
警告:服务“joomladb”正在使用上一个容器中的卷“/ var / lib / mysql”。主机映射“/ home / juanda / soplaelcierzo / db”无效。删除现有容器(使用docker-compose rm joomladb
)以使用主机卷映射。
答案 1 :(得分:0)
例如,当同一项目有2个相似的文件夹。 因此,当您在第一个文件夹中运行docker-composer时,它将其本地文件夹“ ./db”绑定到容器卷。如果之后尝试在另一个文件夹中运行,则尝试将另一个文件夹绑定到同一容器路径。因此,关于
的建议docker-compose rm joomladb
应该帮助