wordpress - 使用 docker 设置 Wordpress 时的卷挂载

标签 wordpress docker docker-compose persistent-storage

Quickstart: Compose and 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:

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

  • The docker volume db_data persists any updates made by Wordpress to the database.

但没有提到 wordpress 容器...

问题:

  1. 我是否应该遵循相同的方法并为 wordpress 容器创建卷,以持久保存将要添加的数据(通过帖子、上传、主题)?
  2. 如果是,我应该指向哪些路径/目录?

最佳答案

也许我发现了什么……

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

根据this文章:

...wp-content contains all user-supplied content. Basically anything you can upload to your site ends up here. That doesn’t include anything you write, mind you. Those things are stored in the WordPress database.

However, as long as you have both the database and your wp-content folder, you can always get your site back, even if everything else was lost.

这也适用于:Setting up WordPress with Docker


尝试一下:

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:

关于wordpress - 使用 docker 设置 Wordpress 时的卷挂载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49202531/

相关文章:

wordpress 插件或任何允许我们编辑每个帖子的元标记的东西?

docker - 如何在不使用存储库的情况下将 Docker 镜像从一台主机复制到另一台主机

docker - 在 Docker 中的 .Net Core 2.0 上运行 IdentityServer4 - 访问主机资源

docker - 使用 docker-compose 从私有(private) GitHub 存储库构建 Docker 镜像

docker - 如何在 docker-compose.yml 文件中转义反引号?

php - Woocommerce 更改结帐页面上的结帐总额

javascript - 如何在 WordPress get_posts() json_encode() 中包含特色图像 URL?

docker - 将 docker0 虚拟网桥名称重命名为其他名称

docker-compose:客户端版本太新

wordpress - 如何将新帖子推送通知从 Wordpress 发送到 PhoneGap(iOS 和 Android)