将文件保存在 Docker 容器外部
使用卷(Volume)的方法将文件保存到Docker容器之外。
以WordPress的Docker容器为例进行说明。
原始的docker-compose(WordPress)
Docker Hub的参考资料
version: '3.1'
services:
wordpress:
container_name: wp-trial
image: wordpress
restart: always
ports:
- 55555:80
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: exampleuser
WORDPRESS_DB_PASSWORD: examplepass
WORDPRESS_DB_NAME: exampledb
volumes:
- wordpress:/var/www/html
db:
container_name: wp-db
image: mysql:5.7
restart: always
environment:
MYSQL_DATABASE: exampledb
MYSQL_USER: exampleuser
MYSQL_PASSWORD: examplepass
MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes:
- db:/var/lib/mysql
volumes:
wordpress
db:
直接指定目录
如果将C:\wordpress\html设置为卷,则可能会以这种方式进行。不过,由于服务器不能直接使用这种设置,最好使用环境变量。
version: '3.1'
services:
wordpress:
# (省略)
volumes:
- /C/wordpress/html:/var/www/html
# (省略)
volumes:
# (wordpressは削除)
db:
在环境变量中指定
如果要设置名为 WORDPRESS_HTML_PATH 的环境变量,可以按照这样的方式进行。
※环境变量需要在开发环境或服务器环境中进行设置即可。
version: '3.1'
services:
wordpress:
# (省略)
volumes:
- ${WORDPRESS_HTML_PATH}:/var/www/html
# (省略)
volumes:
# (wordpressは削除)
db:
可供参考的文章
-
- Docker、ボリューム(Volume)について真面目に調べた
-
- docker for windowsでのdocker-composeのvolumes
- Docker Composeでボリューム作成