将文件保存在 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でボリューム作成
广告
将在 10 秒后关闭
bannerAds