0x00前言

在博客园写了有一年的博客了,也想换换新口味,wordpress的众多的主题和个性化设置非常符合我的喜好,所以捣鼓了一天也算是把它搭好了。

直接在服务器上搭建wordpress还需要配置mysql,apache,php,这几个还不算麻烦,之后下载主题或插件还要配置ftp,修改php的上传大小种种,如果哪天换了vps,又有重新配置,着实麻烦

本篇博客将整理使用docker搭建wordpress的思路,其中遇到许多的的坑,希望我解决的问题能对你们有所帮助

0x01搭建前服务器配置

在腾讯云或者阿里云买一台服务器即可,学生有学生价,一月10块钱。域名额外购买,最近腾讯云搞活动某些后缀域名几块钱1年,域名要备案。

之后可以把厂商的云控制台把域名绑定到服务器上,就能让域名解析到服务了(感觉在说废话)

服务器购买好后,建议开放22,80端口,使用ssh连过去(我这里使用的xshell)

如果是腾讯云的话(阿里云好像可以直接登root,下面的步骤可以忽视),开放root用户方法参考:http://bbs.qcloud.com/thread-11554-1-1.html

简而言之,以下几个步骤

给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= -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 =

接下来再启动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 :  -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结语:

捣鼓几个小时,虽然没学到啥新知识,但是遇到各种问题,还是蛮有收货的。

这个博客搭好了意味着,之后写文章主要在自己博客上了,博客园会很少更新了...

最后上几张新博客的样子吧

主页

文章

参考文章

https://www.jianshu.com/p/8c329800cbf2

从零开始的Wordpress个人博客搭建的更多相关文章

  1. WordPress个人博客搭建

    搭建LNMP环境 请参考前面的博文自行搭建 部署WordPress #创建数据库和用户 mysql -uroot -p123456 -S /data/3306/mysql.sock create da ...

  2. WordPress 建站教程:新手搭建 WordPress个人博客图文教程(完全版)

    前言 WordPress 作为动态博客的代表,至今已经有十几年历史,而且一直在更新发展中,功能强大,插件和主题丰富,WordPress搭建使用也很方便.作为个人站长和博主,很多都是从 WordPres ...

  3. WordPress博客搭建与问题总结

      一.WordPress博客搭建 1.安装Apache web服务器 yum install -y httpd systemctl restart httpd systemctl enable ht ...

  4. 个人博客搭建( wordpress )

    最近同学买了一台虚机( centos7 系统 ).一个域名,让帮忙搭一个个人博客.本着简单快捷,个人博客采用 wordpress 来搭建.为了以后博客系统的迁移方便,使用 docker 来安装 wor ...

  5. 腾讯云-搭建 WordPress 个人博客

    搭建 WordPress 个人博客 准备 LNMP 环境 任务时间:30min ~ 60min LNMP 是 Linux.Nginx.MySQL 和 PHP 的缩写,是 WordPress 博客系统依 ...

  6. 基于 CentOS 搭建 WordPress 个人博客

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 腾讯云提供了开发者实验室帮助用户搭建 WordPress 个人博客,教程内容如下,用户可以点击开发者实验室快速上机完成实验. 准备 LNMP ...

  7. LNMP环境搭建之php安装,wordpress博客搭建

    LNMP环境搭建之php安装,wordpress博客搭建 一.介绍: 1.什么是CGI CGI全称是"通用网关接口"(Common Gateway Interface),HTTP服 ...

  8. 基于Ubuntu 搭建 WordPress 个人博客 - 开发者实验室 - 腾讯云

    1.准备 LAMP 环境 安装 Apache2 在终端输入该命令 ,使用 apt-get 安装 Apache2: sudo apt-get install apache2 -y 安装好后,您可以通过访 ...

  9. LNMP小项目搭建,Centos7.6环境搭建Linux+nginx+mysql+php,wordpress个人博客的搭建(完整搭建步骤)

    一.LNMP搭建,基于nginx服务器搭建wordpress个人博客 准备环境:centos7.6环境下web服务器(nginx+php):主机名:web01,ip:192.168.248.172my ...

随机推荐

  1. Delphi程序员如何找到高薪的工作?(赚不到钱,原因只有一个,就是他们没有被公司录取。Delphi必须要独自进行深入研究,才能精通,同时也不能自由性太强)

    转帖自:http://www.tommstudio.com/ViewNews.aspx?ID=187http://hi.baidu.com/rarnu/blog/ 本文翻译自<美国优秀经理观念大 ...

  2. UVALive 6531 Go up the ultras 单调栈+RMQ

    题目链接:点击打开链接 题意: 给定n座山 以下n个数字表示n座山的高度 若这座山u合法,则要满足: 1.若u的左边存在比u高的山,设v是u左边距离u近期的且严格比u高的山,在[v,u]之间至少有一座 ...

  3. Android官方教程翻译(5)——设置ActionBar

    Setting Up the Action Bar 设置Action Bar PREVIOUSNEXT THIS LESSONTEACHES YOU TO 这节课教你 1.    Support An ...

  4. sklearn 文本处理

    from sklearn.feature_extraction.text import ** 1. 向量的统计.tf-idf 的计算 考虑如下预料,三行 ⇒ 三个文档,不重复的单词共有 8 个, co ...

  5. sklearn 下的流行学习(Manifold Learning)—— sklearn.manifold

    1. t-SNE from sklearn.manifold import TSNE X_proj = TSNE(random_state=123).fit_transform(X) 2. t_sne ...

  6. SCJP考试题310-025(第二套<4>)92-147/147

    310-025 Leading the way in IT testing and certification tools,QUESTION NO: 92 Given: 1. String foo = ...

  7. Json格式日期转换为一般日期

    Json日期转换为一般日期:json日期:/Date(1316756746000)/ 转换为2013-09-01格式的   1 //将json格式的时间转换成一般时间 2 function Chang ...

  8. mysqldump 定时备份数据(全量)

    MYSQL 数据库备份有很多种(cp.tar.lvm2.mysqldump.xtarbackup)等等,具体使用哪一个还要看你的数据规模.下面给出一个表 #摘自<学会用各种姿态备份Mysql数据 ...

  9. 从源码角度看MySQL memcached plugin——1. 系统结构和引擎初始化

    本章尝试回答两个问题: 一.memcached plugin与MySQL的关系: 二.MySQL系统如何启动memcached plugin. 1. memcached plugin与MySQL的关系 ...

  10. glibc 内存申请和释放及堆连续检查

    C语言有两种内存申请方式: 1.静态申请:当你声明全局或静态变量的时候,会用到静态申请内存.静态申请的内存有固定的空间大小.空间只在程序开始的时候申请一次,并且不再释放(除非程序结束). 2.自动申请 ...