如何在linode上备份dockerized wordpress?

时间:2020-07-01 03:47:33

标签: wordpress docker docker-compose linode

我为我的朋友使用docker-compose将wordpress部署到了linode上,并且一切运行了3个月。但是现在我的朋友想停止linode,我需要将所有内容备份回本地计算机。

我的wp网站只是一个简单的博客。我通过docker-compose部署了3个服务,分别是wordpress,mysql,php_myadmin。这是我的docker-compose.yaml文件:

version: "3.0"
services:
  mysqlwp:
    container_name: mysqlwp
    image: mysql:5
    environment:
      - MYSQL_ROOT_PASSWORD=${PASSWORD}
      - MYSQL_DATABASE=${DATABASE}
      - MYSQL_USER=${DB_USER}
      - MYSQL_PASSWORD=${PASSWORD}
    restart: always
    #Mount database
    volumes:
      - '${MYSQL_DATA_DIR}:/var/lib/mysql'
  wordpress:
    container_name: wordpress
    image: wordpress:latest
    environment:
      - WORDPRESS_DB_NAME=${DATABASE}
      - WORDPRESS_DB_USER=${DB_USER}
      - WORDPRESS_DB_PASSWORD=${PASSWORD}
    ports:
      - '80:80'
    links:
      - 'mysqlwp:mysql'
    depends_on:
      - 'mysqlwp'
    #Mount source code
    volumes:
      - '${SOURCE_CODE_DIR}:/var/www/html'
    restart: always
  phpMyAdmin:
    container_name: phpMyAdmin
    image: phpmyadmin/phpmyadmin
    links:
      - 'mysqlwp:mysql'
    environment:
      - PMA_ARBITRARY=1
      - PMA_HOST=mysqlwp
    depends_on:
      - 'mysqlwp'
    ports:
      - '8888:80'
    restart: always

我不是wordpress和docker方面的专家,我只是向前学习。我发现了大量的wordpress插件可以帮助我进行备份,但是我对它们不熟悉,因此不确定应该选择什么?

我应该只备份所有图像和数据库吗?如何为下次重新启动做好准备?

1 个答案:

答案 0 :(得分:1)

由于将${SOURCE_CODE_DIR}映射到/var/www/html并将${MYSQL_DATA_DIR}映射到/var/lib/mysql,因此应创建${SOURCE_CODE_DIR}${MYSQL_DATA_DIR}的备份存储在主机上。

这是您的全部数据,其他数据是临时的,与图像和docker相关。如果您要为图像创建一些备份,则应寻找以下主题:

  • docker save ...命令。
  • docker load ...命令。

相关来源:

  1. docker save
  2. docker load
  3. Docker import/export vs. load/save