利用阿里云搭建WordPress网站 – 搭建基础网站应用

WordPress是一种非常流行的博客网站平台,也可以当作一个内容管理系统(CMS)来使用, 是世界上使用最广泛的博客系统之一。WordPress有非常多优秀的插件,使得这个开源产品变得非常容易扩展,满足不同的需求。
我准备利用一个系列的文章,来展示如果利用阿里云的各种产品(弹性计算,数据库,安全等等),搭建一个完整的WordPress网站。内容包括:

一、搭建基础网站应用

搭建一个基本的网站还是比较简单的,我们一步一步来,这个部分的架构图如下,包括:

  • VPC虚拟网络:在阿里公有云环境中建立出一个二层逻辑隔离的局域网络环境,大部分产品都会部署在这个安全的环境中
  • ECS服务器:安装WordPress应用程序,是整个网站的核心
  • MySQL数据库:存储WordPress数据
  • NAS文件存储:存储WordPress应用文件和上传文件
  • 弹性公网IP(EIP):对外暴露的IP地址

利用阿里云搭建WordPress网站 – 搭建基础网站应用

准备VPC虚拟网络

VPC虚拟网络(https://www.aliyun.com/product/vpc)需要规划,可以很简单,一个VPC一个路由表搞定;也可以很复杂,跨地域多VPC还要和线下机房不冲突。网络规划建议看看这篇:https://help.aliyun.com/document_detail/54095.html。这次为了演示方便,采用简单的一个VPC的方式即可。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

准备EIP弹性公网IP

最好不要用ECS的绑定固定IP,未来升级换代迁移啥啥都不方便,买个BGP多线公网EIP(https://www.aliyun.com/product/eip),可以方便地把IP保留下来,价格也和固定IP一样,没道理不选EIP。购买之后IP记下来备用。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

准备ECS服务器

对于WordPress来说,通用型g5系列或者计算型的c5系列都是不错的ECS服务器(https://www.aliyun.com/product/ecs)选择,操作系统我选的是CentOS,大家可以随意。
注意使用的VPC,另外注意不申请公网带宽,绑定之前那个弹性公网IP比较灵活。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

ECS启动起来后,绑定前面买的EIP
利用阿里云搭建WordPress网站 – 搭建基础网站应用

利用阿里云搭建WordPress网站 – 搭建基础网站应用

确定安全组里面80端口是打开的(默认是打开的),WordPress一般是利用80端进行对外服务的。如果没有打开的话,填一条也很简单。

利用阿里云搭建WordPress网站 – 搭建基础网站应用

准备MySQL数据库

WordPress使用的是MySQL数据库(https://www.aliyun.com/product/rds/mysql)。阿里云MySQL数据库的高可用版采用经典一主一备的双机热备架构,适合80%以上的业务情况。主节点故障时,主备节点秒级完成切换,整个切换过程对应用透明。提供单可用区实例和多可用区实例,主备节点位于同一地域的不同可用区,提供跨可用区的容灾能力,且不额外收费。买的时候要注意VPC的选择。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

启动起来之后,需要加载内网地址(添加ECS白名单)才能用起来。选择对应的ECS即可。

利用阿里云搭建WordPress网站 – 搭建基础网站应用
利用阿里云搭建WordPress网站 – 搭建基础网站应用
利用阿里云搭建WordPress网站 – 搭建基础网站应用
利用阿里云搭建WordPress网站 – 搭建基础网站应用

创建好了之后注意获取内网地址,后面会用到。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

然后为数据库创建账号一个root,为了演示方便我开了一个高权限账号,但是也比较危险,建议大家还是老老实实用普通账号做授权吧。
利用阿里云搭建WordPress网站 – 搭建基础网站应用
利用阿里云搭建WordPress网站 – 搭建基础网站应用

然后添加一个空的数据库wordpress给应用使用,因为有了root账号,就没有用授权账号了
利用阿里云搭建WordPress网站 – 搭建基础网站应用
利用阿里云搭建WordPress网站 – 搭建基础网站应用

准备NAS文件存储

为什么要用到NAS存储(https://www.aliyun.com/product/nas)呢?主要原因在于未来进行横向扩展之后,应用数据不再需要复制同步,方便运维。可以来一个SSD性能型,另外最近还上了一款更厉害的极速型,时延可以达到0.5ms,回头有机会可以试一下。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

创建之后添加一个挂载点,注意选择VPC。
利用阿里云搭建WordPress网站 – 搭建基础网站应用
利用阿里云搭建WordPress网站 – 搭建基础网站应用

创建完成后记录下来挂载点,备后面使用。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

在ECS中挂载NAS

首先将NAS挂载上面,参考:https://help.aliyun.com/document_detail/91476.html
用root用户登陆到ECS里面去,并执行下面的命令,安装NFS客户端并创建挂载目录。

sudo yum install nfs-utils
mkdir /root/wordpressdata

为了可以实现开机自动挂载NFS,需要修改/etc/fstab文件并添加类似下面这样的一条记录。注意里面的挂载点要替换成前面创建的NAS挂载点,挂载目录如果有变化也需要注意。

12bcb24a3ad-mkb68.cn-hongkong.nas.aliyuncs.com:/
 /root/wordpressdata nfs4 
vers=4.0,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,_netdev,noresvport 0 0

利用阿里云搭建WordPress网站 – 搭建基础网站应用

然后重启ECS,用df –h命令查看一下是否确实挂载成功。如果没有挂载成功怎么办?再重启一次试试!
利用阿里云搭建WordPress网站 – 搭建基础网站应用

在ECS中安装Docker并启动WordPress镜像

安装WordPress参考一下官方安装手册,https://codex.wordpress.org/zh-cn:%E5%AE%89%E8%A3%85_WordPress。这次演示我采用了docker的方式,相对更方便些。本着自己折腾比较好玩的精神,自己搭一个docker很方便。阿里云也有自己的ECI弹性容器实例(https://www.aliyun.com/product/eci),有兴趣可以试一试。
首先安装docker,参考:https://docs.docker.com/install/linux/docker-ce/centos/

sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

利用阿里云搭建WordPress网站 – 搭建基础网站应用

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

利用阿里云搭建WordPress网站 – 搭建基础网站应用

sudo yum install docker-ce docker-ce-cli containerd.io

利用阿里云搭建WordPress网站 – 搭建基础网站应用

下面两个命令,第一个启动docker,第二个让docker在ECS重启时都可以自动启动

sudo systemctl start docker
sudo systemctl enable docker

docker安装好了,然后在ECS中拉取并启动WordPress的镜像。首先要在NAS里面创建一个目录来存放WordPress应用文件,并且将镜像中的/var/www/html目录映射到这个目录中。另外也要将80端口也映射出来。

mkdir /root/wordpressdata/html
docker run --name mywordpress \
-p 80:80 \
-v /root/wordpressdata/html:/var/www/html \
-d --restart=always wordpress

利用阿里云搭建WordPress网站 – 搭建基础网站应用

利用docker ps看一下是不是跑起来了。

docker ps

利用阿里云搭建WordPress网站 – 搭建基础网站应用

在ECS中设置WordPress

打开浏览器,输入EIP的地址,如果不出意外就可以打开WordPress网站了。第一次使用设置语言,当然是中文啦。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

第二步设置数据库,里面的信息是之前创建数据库的时候设置的。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

然后设置站点名称,管理员用户等信息。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

不出意外就这么搞定了,用IP就可以访问WordPress网站了。
利用阿里云搭建WordPress网站 – 搭建基础网站应用

上一篇:最好用的 7 款 Vue 3 富文本编辑器


下一篇:最好用的七大* API 接口测试工具