0x00前言php
在博客园写了有一年的博客了,也想换换新口味,wordpress的众多的主题和个性化设置很是符合个人喜爱,因此捣鼓了一天也算是把它搭好了。html
直接在服务器上搭建wordpress还须要配置mysql,apache,php,这几个还不算麻烦,以后下载主题或插件还要配置ftp,修改php的上传大小种种,若是哪天换了vps,又有从新配置,着实麻烦mysql
本篇博客将整理使用docker搭建wordpress的思路,其中遇到许多的的坑,但愿我解决的问题能对大家有所帮助web
0x01搭建前服务器配置sql
在腾讯云或者阿里云买一台服务器便可,学生有学生价,一月10块钱。域名额外购买,最近腾讯云搞活动某些后缀域名几块钱1年,域名要备案。docker
以后能够把厂商的云控制台把域名绑定到服务器上,就能让域名解析到服务了(感受在说废话)shell
服务器购买好后,建议开放22,80端口,使用ssh连过去(我这里使用的xshell)数据库
若是是腾讯云的话(阿里云好像能够直接登root,下面的步骤能够忽视),开放root用户方法参考:http://bbs.qcloud.com/thread-11554-1-1.htmlapache
简而言之,如下几个步骤vim
给root设置密码
sudo passwd root //会要求输入2遍密码
而后修改ssh的配置文件,使root可以被ssh登陆
sudo vim /etc/ssh/sshd_config
将下图的PermitRootLogin值设置成yes, 以后ESC :wq保存退出
最后重启ssh服务,这时候ssh链接会断开,从新用root就能链接了
service ssh restart
0x02安装docker
apt-get install docker docker-compose
安装完成后能够输入docker命令检查是否安装好
0x03下取镜像
这里要下2个镜像(由于可贵写Dockerfile,再额外安装数据库了)
2个镜像一个为wordpress官方提供的镜像,一个是mysql镜像。 一个docker镜像生成的容器至关于一台虚拟机,这里就要作到传说中的站库分离了
下取镜像
docker pull wordpress docker pull mysql:5.6
通过不长的等待可使用下面命令看是否装好了
docker image ls
0x04生成容器
首先开启mysql容器,数据库密码设置成123456
docker run --name w-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
而后进入mysql容器建立个wordpress的数据库
docker exec -it w-mysql mysql -uroot -p
固然这里要输入一下刚刚设置的123456的密码,而后建立数据库
create databases wordpress;
建立好后能够show一下,接下来quit退出容器便可
接下来在启动wordpress容器前准备一个文件uploads.ini
vim uploads.ini #输入如下内容 file_uploads = On memory_limit = 64M upload_max_filesize = 64M post_max_size = 64M max_execution_time = 600
接下来再启动wordpress,并把咱们的uploads.ini加载到容器,这样就使wordpress容器自己配置上传大小限制从2M变成64M了
docker run --name w-wordpress --link w-mysql:db -v /root/docker/wordpress/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini -p 80:80 -d wordpress:latest
注意这里的
此时就能愉快的访问页面了,直接在浏览器中输入你的域名或者服务器的公网ip便可
0x05web端第一次安装
直接访问会让你选语言,我这里由于已经安装了,这里就借鉴参考博客的一张图,表示下数据库那里怎么填
以后就是设置后台管理员帐号密码了,这里不要设置太简单就好。以后就能正常工做了
0x06本身搭建时候遇到的坑
我尝试过直接在服务器上搭,环境安装没多大问题,wordpress数据库安装好后,也改了php的upload_max_filesize的值,可是在下载主题的时候遇到须要ftp链接,上网查了一波又是改代码又是创文件夹的,又是改权限什么的。问题是搭个ftp又麻烦(实际上是我懒)
因此最后选择了docker,可是docker也存在上传大小限制,更坑爹的是没有php.ini文件,我到哪里去改?最后在/etc/php/7.0/cli/目录下发现2个php-xxxxx.ini的文件,改了后重启apache2,结果容器直接exit了,配置没有保存成功,百度了半天也解决不了。最后谷歌看了看老外的文章终于解决了
解决方法也就是上文提到的使用uploads.ini来设置
0xff结语:
捣鼓几个小时,虽然没学到啥新知识,可是遇到各类问题,仍是蛮有收货的。
这个博客搭好了意味着,以后写文章主要在本身博客上了,博客园会不多更新了...
最后上几张新博客的样子吧
主页
文章
参考文章