我正在尝试使用以下链接中提供的示例来进行wordpress与mysql的链接。
https://www.sitepoint.com/how-to-use-the-official-docker-wordpress-image/
我尝试没有卷而工作正常。但是,当我在docker-compose.yml文件中添加卷时,它开始给我以下错误
ERROR: yaml.scanner.ScannerError: mapping values are not allowed here
in "./docker-compose.yml", line 16, column 12
docker-compose.yml file
web:
image: wordpress
links:
- mysql
environment:
- WORDPRESS_DB_PASSWORD=password
ports:
- "127.0.0.3:8080:80"
mysql:
image: mysql:5.7
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=wordpress
working_dir: /var/www/html
volumes:
- wordpress/wp-content/: /home/tgandhi
感谢您的帮助。
答案 0 :(得分:10)
首先,working_dir
和volumes
需要进入撰写文件的web
部分,而不是mysql
部分
其次,卷映射为<host path>:<container path>
。
当您指定/var/www/html
作为工作目录时,wordpress图像使用/var/www/html/wp-content
作为基本目录。因此,您需要将包含静态文件的主机上的目录挂载到/var/www/html/wp-content
。我假设这是~/wordpress
。
web:
image: wordpress
links:
- mysql
environment:
- WORDPRESS_DB_PASSWORD=password
ports:
- "127.0.0.3:8080:80"
working_dir: /var/www/html
volumes:
- /home/tgandhi/wordpress:/var/www/html/wp-content
mysql:
image: mysql:5.7
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=wordpress