使用 docker 设置 Wordpress 时的卷安装

问题描述 投票:0回答:2

快速入门:Compose 和 WordPress 提出以下建议

docker-compose.yml

version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - dbdata:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
volumes:
    dbdata:

为了持久保存数据库数据,创建一个卷:

  • docker 卷
    db_data
    保留 Wordpress 对数据库所做的任何更新。

但是没有提到任何关于 wordpress 容器的信息...

问题:

  1. 我是否应该遵循相同的方法并为
    wordpress
    容器创建卷,以便保留要添加的数据(通过帖子、上传、主题)?
  2. 如果是,我应该指向哪些路径/目录?
wordpress docker docker-compose persistent-storage
2个回答
48
投票

也许我发现了一些东西......

volumes:
   - wp-content:/var/www/html/wp-content

根据this文章:

...

wp-content
包含所有用户提供的内容。基本上,您可以上传到网站的所有内容都会在这里结束。请注意,这不包括您写的任何内容。这些东西存储在 WordPress 数据库中。

但是,只要您同时拥有数据库和

wp-content
文件夹,您就可以随时恢复您的网站,即使其他所有内容都丢失了。

这也适用于此:使用 Docker 设置 WordPress


尝试一下:

version: '3.3'

services:
  db:
   image: mysql:5.7
   volumes:
     - dbdata:/var/lib/mysql
   restart: always
   environment:
     MYSQL_ROOT_PASSWORD: somewordpress
     MYSQL_DATABASE: wordpress
     MYSQL_USER: wordpress
     MYSQL_PASSWORD: wordpress

  wordpress:
   depends_on:
     - db
   image: wordpress:latest
   volumes:
     - wp-content:/var/www/html/wp-content
   ports:
     - "8000:80"
   restart: always
   environment:
     WORDPRESS_DB_HOST: db:3306
     WORDPRESS_DB_USER: wordpress
     WORDPRESS_DB_PASSWORD: wordpress

volumes:
  dbdata:
  wp-content:

0
投票

替换卷:用这个

体积: - wordpress_data:/var/www/html - ./src:/var/www/html:缓存

© www.soinside.com 2019 - 2024. All rights reserved.