原本的wordpress部署非常麻烦,需要同时配置apache,mysql与wp,难以统一管理不说,迁移也麻烦,所以准备将该服务迁移到docker上。查阅了网上许多资料,终于成功了,所以这里总结出一个比较方便可行的方法。
1、linux系统上需要部署docker,docker-compose
2、wordpress上安装updraft的插件,并进行一次备份
updraft能够备份所有恢复一个网站所需要的东西,基础版也足够用,在确认该插件备份完成后,打开服务器。
cd /var/www/html/wp-content ls cache index.php languages plugins themes updraft upgrade uploads cp updraft /opt
准备好了之后就可以删除原来的wordpress了,完全清除wordpress的方法很麻烦,这里不赘述,建议网上寻找各种办法。
我们这里使用的是docker-compose,文件内容如下:
version: "3.9" services: db: image: mysql:5.7 volumes: - /opt/mysql:/var/lib/mysql restart: always ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: 123456 MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress wordpress: depends_on: - db image: wordpress:latest volumes: - /opt/wordpress:/var/www/html ports: - "80:80" restart: always environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress
保存为docker-compose.yml放在某个目录中,直接
docker compose up -d
启动docker后直接访问原网页,按照提示进行安装,此时的wp仍然是空白的状态,不过不用担心。
进入空白的wp中,直接在插件市场下载一个updraft,并将其启用。
ssh连接上服务器,开始操作。
docker ps 7169ee1890e0 wordpress:latest "docker-entrypoint.s…" 16 minutes ago Up 16 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp wordpress-wordpress-1 e7e774503c67 mysql:5.7 "docker-entrypoint.s…" 16 minutes ago Up 16 minutes 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp wordpress-db-1 cd /opt docker cp updraft wordpress-wordpress-1:/var/www/html/wp-content
现在,登录那个空白站点,在updraft插件中已经出现了自己原先备份的那套数据,点击数据恢复就行。
由于wp和sql都做了数据持久化,所以当自己不需要这些服务的时候,直接在docker-compose.yml所在的目录使用
docker-compose down
即可关闭服务,再使用up即可恢复,不必担心数据丢失的问题。另外由于做了数据持久化,在/opt/wordpress目录与/opt/mysql目录可以轻松地管理配置文件,进行个性化的定制。
原文链接:https://blog.csdn.net/qq2499094166/article/details/127176992?ops_request_misc=&request_id=291bf1eab3354700872bfdb51567a51c&biz_id=&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~koosearch~default-23-127176992-null-null.268%5Ev1%5Econtrol&utm_term=docker%E3%80%81wordpress%E3%80%81wordpress%E5%BB%BA%E7%AB%99%E3%80%81wordpress%E4%B8%BB%E9%A2%98%E3%80%81%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F%E3%80%81