【安装教程】搭建 WordPress 的流程及遇到的问题

搭建流程一览

这里使用的是 docker 搭建法,让服务器安全性更高一些

拉取镜像

docker pull wordpress:latest
docker pull mysql:latest

运行镜像

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=root用户密码 -d mysql
docker run --name some-wordpress --link some-mysql:mysql -p 8080:80 -d wordpress

配置 WordPress

现在就可以访问 8080 端口来安装 WordPress 了

Error establishing a database connection

在我访问网站的时候看到了这个页面,并没有安装页面

之后了解到是因为我安装了 mysql 8.0 的缘故,处理流程如下:

进入mysql容器
docker exec -it mysql /bin/bash
登陆数据库
mysql -u root -p
use mysql;
开启root远程访问权限
grant all on *.* to 'root'@'%';
修改加密规则
alter user 'root'@'localhost' identified by 'root用户密码' password expire never;
更新密码
alter user 'root'@'%' identified with mysql_native_password by 'root用户密码';
刷新权限
flush privileges;

迁移流程一览

备份两个镜像,在本地导入,镜像是最初始的东东,所以不会有啥多余的东西

备份 wordpress 数据库

在 vps 上运行命令:

mysqldump -uroot -p wordpress > ./wordpress.dump
docker cp [container_id]:/wordpress.dump ./wordpress.dump

在本机运行命令:

docker cp ./wordpress.dump [container_id]:/wordpress.dump
mysql -u root -p wordpress < ./wordpress.dump

镜像内若是没有 wordpress 数据库可以自己先新建一个,再导入

更换数据库内的后台及链接 ip 为本机

进入 mysql 的 docker,启动 mysql,输入如下命令:

use wordpress;

update wp_options set option_value = replace(option_value,'binlep.top','192.168.190.130:8080') where option_name = 'home' or option_name = 'siteurl';

以上命令就可以让你在本机登录后台了,如果想更换类似图片,视频这样的链接,可以再运行这些 mysql 命令:

update wp_posts set post_content = replace(post_content,'binlep.top','192.168.190.130:8080');
update wp_comments set comment_content = replace(comment_content,'binlep.top','192.168.190.130:8080');
update wp_comments set comment_author_url = replace(comment_author_url,'binlep.top','192.168.190.130:8080');

备份 wp-content

在 vps 上运行命令:

docker cp [container_id]:/var/www/html/wp-content/ ./wp-content
zip wp-content.zip -r ./wp-content

在本机 docker 容器内运行命令:

rm -rf /var/www/html/wp-content/

在本机内运行命令

unzip wp-content.zip
docker cp ./wp-content/ [container_id]:/var/www/html/wp-content/

之后再进入容器,输入如下命令:

chown -R www-data /var/www/html/wp-content
chgrp -R www-data /var/www/html/wp-content
chmod 755 /var/www/html/wp-content

这样就能把目录的文件权限配置好了

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注