用Docker搭建WordPress博客用Docker搭建

用Docker搭建WordPress博客


一、WordPress简介

WordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的,用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。

WordPress官方支持中文版,同时有爱好者开发的第三方中文语言包,如wopus中文语言包。WordPress拥有成千上万个各式插件和不计其数的主题模板样式。

二、Docker安装

  1. ####配置docker yum源
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
复制代码
  1. ####安装指定版本,这里安装3:20.10.7-3.el7
yum list docker-ce --showduplicates | sort -r
yum install -y docker-ce-3:20.10.7-3.el7.x86_64
复制代码
  1. ####配置docker 镜像加速及修改cgroupdriver
mkdir /etc/docker
cat > /etc/docker/daemon.json <<EOF
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "registry-mirrors": ["https://qtytpky9.mirror.aliyuncs.com"]
}
EOF
复制代码
  1. ####启动docker
systemctl start docker && systemctl enable docker
复制代码

三、下载mysql镜像及wordpress镜像

可以去官网registry.hub.docker.com/找出合适的mysql和…

  1. ####下载mysql镜像
docker pull mysql:5.7.34
复制代码
  1. ####下载wordpress镜像
docker pull wordpress:4.6
复制代码
  1. ####查看下载结果,docker images
[root@localhost ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
mysql        5.7.34    09361feeb475   2 weeks ago   447MB
wordpress    4.6       ee397259d4e5   4 years ago   420MB
复制代码

四、启动mysql及wordpress

  1. ####启动mysql,将数据挂载在/home/data/mysqldata下,并指定为utf8mb4编码
docker run -v /home/data/mysqldata:/var/lib/mysql --name wordpress_mysql -e MYSQL_ROOT_PASSWORD=123456 -p 13306:3306 -d mysql:5.7.34 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
复制代码
  1. ####启动WordPress,将数据挂载在/home/data/www/html下
docker run -v /home/data/www/html:/var/www/html --name wordpress --link wordpress_mysql:mysql -p 8080:80 -d wordpress:4.6
复制代码

五、访问及初始化wordpress

  1. ####现在可以访问wordpress进行测试了,如在浏览器中输入http://127.0.0.1:8080/进行访问,这里你把127.0.0.1换成你自己的ip进行测试。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2. ####成功初始化后使用刚才创建的账号进行登陆,进入主页
在这里插入图片描述

六、修改UEditor插件作为默认的写文章插件

  1. ####修改插件前效果,插件较简单

在这里插入图片描述
2. ####下载UEditor-KityFormula-for-wordpress插件,得到jinayang-UEditor-KityFormula-for-wordpress-master.zip

gitee.com/fedkey/UEdi…

在这里插入图片描述

  1. ####安装UEditor-KityFormula-for-wordpress插件

插件 -> 安装插件 -> 上传插件,找到刚下载的jinayang-UEditor-KityFormula-for-wordpress-master.zip进行上传插件安装,注意这里会报一个错误:上传的文件尺寸超过php.ini中定义的upload_max_filesize值,通过增加一个docker中或宿主机上的.htaccess配置文件来解决。

在这里插入图片描述
通过增加一个docker中或宿主机上的.htaccess配置文件来解决上传的文件尺寸超过php.ini中定义的upload_max_filesize值错误如下:

##进入宿主机下html目录(如果你直接在docker中操作,则进入/var/www/html)
cd /home/data/www/html

cat >> .htaccess << EOF
php_value post_max_size 24M
php_value upload_max_filesize 8M
EOF
复制代码

修改配置后,再重新刷新重试,进行安装UEditor-KityFormula-for-wordpress成功,成功安装后启动插件如截图中如示。
在这里插入图片描述
在这里插入图片描述

  1. ####测试写一篇文章,看到使用了UEditor插件,顺手多了。

在这里插入图片描述

七、总结

至此完成搭建,还有很多功能待测试体验,后续还需补充插件清理及修改Ueditor支持的文件类型等内容,另外,默认文章自动保存会多版本,也不是我们想要的,需要修改,支持禁用文章自动保存,禁用文章修订版本等功能。


仍未测试部分如下

  1. ####禁用WordPress自动保存和修订版本的代码, 将以下两段代码放入主题模板文件,未测试
//禁用文章自动保存

add_action('wp_print_scripts','disable_autosave');

function disable_autosave(){

wp_deregister_script('autosave');

}

//禁用文章修订版本

add_filter( 'wp_revisions_to_keep', 'specs_wp_revisions_to_keep', 10, 2 );

function specs_wp_revisions_to_keep( $num, $post ) {

return 0;

}
复制代码
  1. ####插件清理

WP-Sweep

  1. ####修改Ueditor支持的文件类型

./wp-content/plugins/UEditor-KityFormula-for-wordpress/ueditor/php/config.json

  1. ####调整自已喜欢的样式,改如下文件

/home/data/www/html/wp-content/themes/alternate-lite/style.css