华为云云耀云服务器L实例评测: 使用docker快速搭建博客系统【玩转华为云】

举报
wzsのcloud 发表于 2024/10/30 13:46:01 2024/10/30
【摘要】 使用Docker在 华为云耀云服务器L实例 上快速搭建博客系统

在华为云云耀云服务器上快速博客系统

需要了解

  • 本文主要讲述快速搭建自己的博客系统,针对广大用户,没有门槛限制,一步到位搭建属于自己的博客网站。
  • 选择适合的云服务器:本文采用的是 ==华为云耀云服务器L实例==
  • 本文使用本地 shell 方式连接到远程服务器,进行搭建部署
  • 操作系统版本 Ubuntu 22.04.1 LTS
  • 安装Docker版本 Docker version 24.0.5
  • 需要拉取 mysql 和 wordpress 容器镜像
  • 购买链接 : 华为云耀云服务器L实例
  • 详细购买配置实例和 shell 连接可参考文章: 了解配置和管理L型云服务器

部署与管理工具介绍

  • Docker: Docker 是一种开源的容器化平台,可以让你轻松地打包、分发和运行应用程序。通过使用 Docker,你可以方便地创建独立且可移植的容器,这些容器包含了应用程序及其依赖的所有内容。
  • WordPress: WordPress 是一个流行的开源博客平台,它提供了丰富的功能和可定制性,可以帮助你创建和管理自己的博客网站。
  • 云服务器: 云服务器是基于云计算技术提供的虚拟服务器实例。选择华为云耀云服务器L实例,然后在其上安装和运行 Docker。

image.png

云耀云服务器特点

  1. 高性能硬件配置:L型云服务器采用高性能的Intel Xeon处理器,配备大容量内存和高速本地SSD存储,以提供卓越的计算能力和存储性能。

  2. GPU加速支持:L型云服务器支持GPU加速,适用于需要进行大规模并行计算、机器学习和深度学习等工作负载。GPU的加入可以显著提高计算速度和效率。

  3. 高带宽低延迟网络:L型云服务器提供高带宽和低延迟的网络连接,以满足对网络性能有高要求的应用场景。它支持弹性公网IP和弹性子网,可以实现灵活的网络配置和管理。

  4. 弹性伸缩和负载均衡:L型云服务器支持弹性伸缩功能,可以根据业务需求自动调整实例数量和规格,以满足不同负载情况下的需求。它还支持自动负载均衡,可以在多个实例之间均衡分配负载,提高系统的可用性和性能。

云耀云服务器优势

  • 智能不卡顿: 华为云耀云服务器提供强大的计算和存储性能,采用最新的处理器和高性能硬盘,确保应用程序和服务能够以高效、流畅的方式运行,避免卡顿和延迟。

  • 价优随心用: 华为云耀云服务器提供灵活的按需扩展和计费模式,您可以根据实际需求灵活调整服务器配置和规模,避免资源浪费,并且只支付您实际使用的资源,实现成本的优化和控制。

  • 上手更简单: 华为云耀云服务器提供直观易用的控制台和管理工具,使您可以轻松创建、配置和管理云服务器实例。此外,华为云还提供了丰富的文档和技术支持,以帮助您快速上手和使用。

  • 管理特省心: 华为云耀云服务器具有高可靠性和可用性,采取了多重的冗余机制和容错设计,同时提供安全保障措施,如网络隔离、安全组、防火墙等,减轻您的管理负担。此外,华为云还提供了自动化管理工具和API,帮助您实现管理的自动化和简化。

安装Docker

使用 ssh 连接到云服务器

# 查看云服务器版本
root@hcss-ecs-5c9b:~# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.1 LTS
Release:	22.04
Codename:	jammy

# 如果之前安装过请执行此命令卸载docker
root@hcss-ecs-5c9b:~# apt-get remove docker docker-engine docker.io

更新软件包列表并安装 Docker 的依赖项

#更新软件包列表
root@hcss-ecs-5c9b:~# apt-get update

# 安装 Docker 软件包依赖项
root@hcss-ecs-5c9b:~# apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common

信任 Docker 的 GPG 公钥

# 信任Docker的GPG公钥:
root@hcss-ecs-5c9b:~# curl -fsSL https://repo.huaweicloud.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

添加 Docker 的稳定版存储库

# 对于amd64架构的计算机,添加软件仓库:
root@hcss-ecs-5c9b:~#  add-apt-repository "deb [arch=amd64] https://repo.huaweicloud.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

更新软件包列表,并安装 Docker

# 更新索引文件并安装
root@hcss-ecs-5c9b:~# apt-get update
# 安装 docker
root@hcss-ecs-5c9b:~# apt-get install docker-ce docker-ce-cli containerd.io

验证 Docker 安装是否成功

# 查看 docker 版本
root@hcss-ecs-5c9b:~# docker -v
Docker version 24.0.5, build 24.0.5-0ubuntu1~22.04.1

启动并查看 Docker 服务

# 启动并查看 docker 服务
root@hcss-ecs-5c9b:~# systemctl start  docker.service
root@hcss-ecs-5c9b:~# systemctl status docker.service
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; en>
     Active: active (running) since Wed 2023-09-20 13:43:42>
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 363725 (dockerd)
      Tasks: 9
     Memory: 31.3M
        CPU: 266ms
     CGroup: /system.slice/docker.service
             └─363725 /usr/bin/dockerd -H fd:// --container>

配置镜像加速器

下载默认在dockerhub上拉取镜像,可配置镜像加速器解决拉取过慢问题

# 以root用户登录容器引擎所在的虚拟机
# 修改“/etc/docker/daemon.json”文件(如果没有,可以手动创建),在该文件内添加如下内容

root@hcss-ecs-5c9b:~# vi /etc/docker/daemon.json

{
    "registry-mirrors": [ "https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com" ]
}

# 按“Esc”,输入:wq保存并退出。

image.png

# 重启容器引擎
root@hcss-ecs-5c9b:~# ystemctl restart docker

# 配置结果
root@hcss-ecs-5c9b:~# docker info

执行docker info,当Registry Mirrors字段的地址为加速器的地址时,说明加速器已经配置成功。

image.png

下载镜像

# 拉取镜像
root@hcss-ecs-5c9b:~# docker images 
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE

# 不指定版本,默认安装最新版
root@hcss-ecs-5c9b:~# docker pull mysql
root@hcss-ecs-5c9b:~# docker pull wordpress

创建数据库容器

将本地的 “/dbData” 目录与容器内的 “/var/lib/mysql” 目录进行挂载,这样容器中的 MySQL 数据库文件将保存在本地的 “/dbData” 目录中。

指定数据库密码为 redhat

root@hcss-ecs-5c9b:~# mkdir /dbData
root@hcss-ecs-5c9b:~# docker run -tid --name db --restart always -v /dbData:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=redhat -e MYSQL_DATABASE=wordpress mysql
57b9dc88cddf78f4e0bed6c37c5822bdd9553cbd162e15fe4d08d2f072546371
root@hcss-ecs-5c9b:~# docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS                 NAMES
57b9dc88cddf   mysql     "docker-entrypoint.s…"   4 seconds ago   Up 2 seconds   3306/tcp, 33060/tcp   db

测试一下数据库的连通性,查看数据库地址,待会创建wordpress是还需要用到数据库地址

# 查看数据库地址
root@hcss-ecs-5c9b:~# docker inspect db | grep -i ipaddr
            "SecondaryIPAddresses": null,
            "IPAddress": "172.17.0.2",
                    "IPAddress": "172.17.0.2",
                    
# 登录数据库
root@hcss-ecs-5c9b:~# mysql -uroot -predhat -h 172.17.0.2
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.1.0 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| wordpress          |
+--------------------+
5 rows in set (0.00 sec)

mysql> use wordpress;
Database changed
mysql> show tables;
Empty set (0.00 sec)

mysql> exit
Bye

创建wordpress博客容器

本地的 “/web” 目录与容器内的 “/var/www/html” 目录进行挂载,这样容器中的 WordPress 文件将保存在本地的 “/web” 目录中。

创建时需指定数据库

root@hcss-ecs-5c9b:~# docker run -tid --name blog -v /web:/var/www/html -p 80:80 -e WORDPRESS_DB_HOST=172.17.0.2 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=redhat -e WORDPRESS_DB_NAME=wordpress wordpress
ca64784fb03e329b385b55602c5c162d431687f1f33759fdd4995421d4ab7b86

# 查看容器
root@hcss-ecs-5c9b:~# docker ps -a
CONTAINER ID   IMAGE       COMMAND                  CREATED         STATUS         PORTS                               NAMES
ca64784fb03e   wordpress   "docker-entrypoint.s…"   6 seconds ago   Up 4 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp   blog
57b9dc88cddf   mysql       "docker-entrypoint.s…"   9 minutes ago   Up 9 minutes   3306/tcp, 33060/tcp                 db



访问博客

现在, WordPress 博客已经成功搭建起来了!可以通过浏览器访问 服务器的 IP 地址来查看博客首页。根据页面提示,设置你的管理员账号和密码,并完成博客的初始化配置。

初始化配置博客

选择简体中文进行安装.

image.png

根据自身实际填写相应信息,填写完成之后点击安装WordPress.

image.png

安装完成.

image.png

输入创建的用户名和密码进行登录

image.png

登录成功.

image.png

可以根据自身需求选择自己喜欢的主题样式.,点击添加主题即可查看更多主题样式.

image.png

根据自己爱好进行安装,安装完成后点击启用,即可更换成功

image.png

接下来发表一篇自己的博客文章.

右侧导航栏点击文章,点击写文章.

image.png

写作完成,点击右上角发布.

image.png

文章发布成功,点击查看文章

image.png

文章发布完成.也可通过手机端直接访问公网ip进行文章查看.

image.png

如果后续退出往博客系统,可通过http://公网ip/login 进行登录.

扩展和管理 WordPress

  • blog为容器名

  • 启动容器:docker start blog

  • 停止容器:docker stop blog

  • 删除容器:docker rm blog

  • 查看日志:docker logs blog

总结

通过使用Docker创建独立且可移植的WordPress容器,并在云服务器上运行,可以实现便捷的Web应用部署与管理,帮助用户快速搭建具备丰富功能和定制性的博客网站。Docker是一种开源的容器化平台,提供了轻量级的容器来封装应用及其依赖,并使其能够在不同环境中运行 。华为云耀云服务器L实例 则提供实例,为用户提供了稳定可靠的基础设施。结合这三者,用户可以方便地创建、管理和扩展自己的WordPress博客平台,享受高效的Web应用开发体验。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。