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

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云服务器ECS,u1 2核4GB 1个月
简介: WordPress是一种非常流行的博客网站平台,也可以当作一个内容管理系统(CMS)来使用, 是世界上使用最广泛的博客系统之一。WordPress有非常多优秀的插件,使得这个开源产品变得非常容易扩展,满足不同的需求。

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

一、搭建基础网站应用

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

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

1

准备VPC虚拟网络

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

准备EIP弹性公网IP

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

准备ECS服务器

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

ECS启动起来后,绑定前面买的EIP
1

1

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

1

准备MySQL数据库

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

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

8
9
10
11

创建好了之后注意获取内网地址,后面会用到。
12

然后为数据库创建账号一个root,为了演示方便我开了一个高权限账号,但是也比较危险,建议大家还是老老实实用普通账号做授权吧。
13
14

然后添加一个空的数据库wordpress给应用使用,因为有了root账号,就没有用授权账号了
15
16

准备NAS文件存储

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

创建之后添加一个挂载点,注意选择VPC。
18
19

创建完成后记录下来挂载点,备后面使用。
20

在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

21

然后重启ECS,用df –h命令查看一下是否确实挂载成功。如果没有挂载成功怎么办?再重启一次试试!
22

在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

23

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

24

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

25

下面两个命令,第一个启动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

26

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

docker ps

27

在ECS中设置WordPress

打开浏览器,输入EIP的地址,如果不出意外就可以打开WordPress网站了。第一次使用设置语言,当然是中文啦。
28

第二步设置数据库,里面的信息是之前创建数据库的时候设置的。
1

然后设置站点名称,管理员用户等信息。
30

不出意外就这么搞定了,用IP就可以访问WordPress网站了。
1

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
10天前
|
运维 Serverless 应用服务中间件
Serverless 应用引擎产品使用之在阿里云Serverless中函数计算FC nginx 部署上去之后放置静态页面如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
214 0
|
10天前
|
弹性计算 运维 Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,使数据库和阿里云函数计算位于同一个内网中如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
971 0
Serverless 应用引擎产品使用之在阿里函数计算中,使数据库和阿里云函数计算位于同一个内网中如何解决
|
10天前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之在使用阿里云函数计算部署网站时,网站打开不稳定如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
166 0
|
10天前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云函数计算中通过调用函数如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
281 10
|
10天前
|
运维 文字识别 Serverless
Serverless 应用引擎产品使用之在阿里云函数计算中,需要处理的文件大于100MB如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
129 5
|
10天前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云函数计算中,容器运行过程中的最大内存使用量获取如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
33 2
|
10天前
|
弹性计算 运维 Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,使用阿里云API或SDK从函数计算调用ECS实例的服务如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
37 4
|
10天前
|
弹性计算 JSON 运维
Serverless 应用引擎产品使用之阿里云serverless的s deploy,本地的代码编译后的镜像无法推送上去如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
29 0
|
10天前
|
运维 Serverless PHP
Serverless 应用引擎产品使用之在阿里云Serverless中耗时操作执行如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
20 0
|
10天前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云Serverless中将已有的域名绑定到FC函数上如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
24 1

热门文章

最新文章