【华为云-开发者专属集市】DevCloud+ECS、MySQL搭建WordPress

news/2024/4/25 7:29:37/文章来源:https://blog.csdn.net/qq_41765918/article/details/129139511

文章目录

    • AppBazaar官网
    • 选择与购买项目
    • 项目概况
    • 操作过程
      • 购买DevCloud服务
      • 创建项目
      • 添加制品库
      • 应用部署
        • 购买ECS
        • 添加部署模板并执行任务
        • 故障排除
        • 安装及访问WordPress
        • 登录网站管理后台
        • 访问网站
        • 完善部署模板
      • 资源释放
      • 使用总结


AppBazaar官网

首先,我们来到AppBazaar的官网:https://console.huaweicloud.com/appbazaar/home

image-20221120110457554.png

AppBazaar现有16个项目,含括了工作中常用的服务架构。我们可在这里选择自己感兴趣的项目或者想要了解的项目来进行玩耍,正如官方的宣言:一键部署,构建应用无负担

那究竟要如何玩耍呢?


选择与购买项目

首先登录平台,如果没有华为云账号,得先注册账号,实名认证后再继续。

然后点选所需的项目进入购买页面。

image-20221120112402324.png

然后点击 立即购买(PS:现在可是免费呢,而且还是终身的,快去体验啦😘)

image-20221120112439384.png

点选 用户协议 就可以 提交订单

image-20221120113738717.png

然后就是明确金额和点击 确认付款 之后就会提示订单支付成功。

image-20221120114009672.png

image-20221120114317120.png

购买成功后,可以前往买家中心,在此处可查看到所购买的项目,然后就可以去下载对应的文档来进行参考与学习了。

image-20221120114818418.png

所下载的文档如下图所示,包含了这个项目的上云指导和操作指导。

image-20221120120003535.png

接下来,就可以去尝试和体验了,心动不如行动!那就让金鱼哥来做先锋队。


项目概况

项目名称:WordPress

项目简介:WordPress是一款个人博客系统,也可以把 WordPress当作一个内容管理系统(CMS)来使用,它是使用php语言和MySQL数据库开发的,用户可以在支持 php 和 MySQL数据库的服务器上使用自己的博客。

开发语言:php

应用运行环境:CentOS、Nginx、php、MySQL

涉及云服务:弹性云服务器 ECS、DevCloud


是不是听到了一个新的名词:DevCloud,那DevCloud究竟是什么呢?DevCloud是一个软件开发平台,是一站式、全流程、安全可信的云原生DevSecOps平台,提供项目管理、代码托管、流水线、代码检查、编译构建、部署、测试、制品仓库等服务,助力质量提升和效率倍增。

而这次项目部署需要使用到ECS和DevCloud平台。

如果想详细了解DevCloud平台的情况,可到官网进行了解:https://support.huaweicloud.com/devcloud/index.html

image-20221120202452542.png

image-20221122221427726.png


操作过程

购买DevCloud服务

登录华为云后,按 产品-开发与运维-软件开发平台DevCloud 路径后,即可进入华为云DevCloud平台首页。

image-20221120171138143.png

点击管理控制台按钮,进入DevCloud项目列表。

image-20221120171223183.png

金鱼哥所在城市是广州,因此将区域切换到 华南-广州
因服务还未开通,所以会有相关提示,例如是否使用新主题,金鱼哥要做先锋队,那就选择使用新主题。

image-20221120171537302.png

个人使用选择 基础版 并点击 免费开通 跳转到产品选择页面。

image-20221120171716450.png

image-20221120171803228.png

明确相关条款后选择 下一步

image-20221120174323813.png

明确要购买的产品服务即可去支付确认付款

image-20221120174402037.png

image-20221120174422186.png


创建项目

购买成功后即可从DevCloud平台首页进入管理控制台

image-20221120201835956.png

或者从用户控制台中去选择对应的服务也可进入到DevCloud平台的控制台。

image-20221120201939791.png


在控制台中点击立即使用

image-20221120202347441.png

点击新建项目进入到项目创建页面。

image-20221120202640197.png

在新建项目页,按如下参数配置项目:
项目流程:Scrum
项目名称:自定义(如:wordpress)
点击确定按钮完成项目创建

image-20221120202807109.png

image-20221120203833360.png

image-20221120203731716.png


添加制品库

在本地电脑中新建txt文档并重命名为docker-compose.wordpress.yml,或者直接使用Markdown之类的软件创建文件。
复制以下内容至docker-compose.wordpress.yml文件中。
若是在正式应用环境,需要根据实际情况将以下password、user等相关信息进行修改。

version: "3"
services:db:image: mysql:8.0command:- --default_authentication_plugin=mysql_native_password- --character-set-server=utf8mb4- --collation-server=utf8mb4_unicode_civolumes:- db_data:/var/lib/mysqlrestart: alwaysenvironment:MYSQL_ROOT_PASSWORD: somewordpressMYSQL_DATABASE: wordpressMYSQL_USER: wordpressMYSQL_PASSWORD: wordpresswordpress:depends_on:- dbimage: wordpress:latestports:- "8000:80"restart: alwaysenvironment:WORDPRESS_DB_HOST: db:3306WORDPRESS_DB_USER: wordpressWORDPRESS_DB_PASSWORD: wordpressvolumes:db_data:

注意:Yaml文件有格式要求,注意配置项前面的空格和层级的对齐。


将文件上传至制品库中。

image-20221120211321878.png

image-20221120211503951.png


应用部署

购买ECS

应用需要部署到服务器上,因此需要购买一台ECS,再将应用部署上去。
在项目页面中,选择 通用设置 进入通用设置页面。
选择 主机组管理 ,点击 新建主机组 按钮。

image-20221120211749094.png

输入主机组名称(如:Linux_Group),点击保存按钮完成主机组创建。

image-20221120211841790.png

自动跳转到主机信息页面,点击导入ECS按钮。

image-20221120212053606.png


由于还未创建ECS,点击ECS控制台按钮,进入ECS控制台。

image-20221120212141400.png

点击购买弹性云服务器按钮。
image-20221120212313446.png

基础配置 步骤,按如下配置:
计费模式:按需计费
区域:华南-广州(与DevCloud项目所在区域保持一致)
可用区:随机分配
CPU架构:x86计算
规格:S6.small.1(可通过1vCPU,1GB进行搜索过滤,实际项目根据实际情况选择)
镜像:公共镜像CentOS 7.9 64bit(40GB)
系统盘:高I/O

image-20221120213649476.png

image-20221120213804844.png

点击下一步:网络配置按钮

在网络配置页按如下配置对应参数:
网络:vpc-default/subnet-default
安全组:自定义(如果安全组入向规则里没有TCP: 22和TCP:8383端口,需要点击新建安全组按钮,
进入对应安全组,配置入方向规则TCP: 22和TCP:8383端口)

image-20221120220345219.png

创建一个新的安全组或者可使用在用的安全组。

image-20221120221042302.png

image-20221120221141227.png

弹性公网IP:现在购买
线路:全动态BGP
公网带宽:按带宽计费
带宽大小:1
释放行为:随实例释放
点击下一步:高级配置按钮

image-20221120221334267.png

在高级配置页,按如下进行配置
云服务器名称:默认/自定义
登录凭证:密码
密码:自定义(请牢记,后续部署使用)
其他默认,点击下一步:确认配置按钮

image-20221120221617938.png

确认配置页,会显示之前步骤配置的ECS参数,购买数量:1,勾选我已阅读并同意《镜像免责声 明》,点击立即购买按钮,完成ECS创建。

image-20221120221745768.png

在ECS列表页,可以看到新创建的ECS。

image-20221120232043408.png

image-20221120232128206.png


如果需要长期进行实验和测试,还是购买一台长期的机器来做实验,金鱼哥这边在双十一活动的时候购买了一台HECS的机器,用于后续的测试。因此后续的各种实验和测试都使用这台HECS。

image-20221121214150253.png


返回DevCloud页面,将创建的ECS导入(如果没有刷新,先将页面关闭,再打开即可)。

image-20221121215540642.png

在导入ECS页面,按如下参数进行配置:
用户名:root
密码:购买ECS时设置的密码
端口:22
勾选声明,点击添加按钮

image-20221121215850058.png

返回主机信息页面,可以看到ecs已被添加到主机组,并显示连通性验证成功。

image-20221121215941763.png


添加部署模板并执行任务

按照路径部署-部署任务进入部署服务,点击新建任务按钮。

image-20221121220230866.png

部署模板选择空白模板,点击下一步按钮。

image-20221121220519813.png

通过点击左侧部署步骤间的+号(第一个步骤直接点击左侧栏添加即可),界面右侧可弹出添加步骤菜单。
本次操作需要依次添加安装/卸载Docker执行shell命令选择部署来源执行shell命令步骤。

安装/卸载Docker步骤,选择主机组,其余保持默认配置。

image-20221121221036920.png

image-20221121221459255.png

image-20221121221944140.png

在第一个执行shell命令步骤,重命名为安装docker-compose
输入shell命令:

yum -y install docker-compose 

image-20221121222810107.png

选择部署来源步骤,选择软件包为之前上传的docker-compose.wordpress.yml文件。
下载到主机的部署目录输入为:/root/wordpress/

image-20221121223809299.png

在第二个执行shell命令步骤,重命名为启动服务

docker-compose -f /root/wordpress/docker-compose.wordpress.yml up -d

image-20221121224151361.png

点击保存并执行按钮。
界面会自动跳转到部署任务执行界面,左侧显示部署步骤执行进度,右侧打印部署日志。
如下图所示,部署任务正在执行,请耐心等待。

image-20221121224239881.png


故障排除

这次操作中,遗憾的是并没有像参考文档那样说的等待就可成功,而是在最后的一个任务遇到错误。

图片为第2次部署中的错误(中途手动停止),第1次部署时最后一个任务的时间起码超过20分钟而自动停止出现报错。

image-20221122193947803.png

image-20221122211848999.png

在控制台中,并没有看到相关的错误日志提示。

去ECS查看系统日志,可看到有任务在执行的提示信息,可惜的是也并没有具体的错误信息来辅助定位。

image-20221122193816749.png

当后面停止了部署任务后,在日志中还会不断提示有任务仍然继续运行,若想停止进程,可按如下图方式来进行停止:

image-20221121233207400.png

既然是用到docker的形式来进行,那一定会有相关的镜像下载成功才对,但查看本地镜像为空:

image-20221122201254222.png

既然是最后一个任务有问题,那干脆直接在HECS上执行启动命令,看看是否有相关报错信息:

image-20221121232617540.png

期间看到的报错信息已经很明显了,金鱼哥根据过往的工作经验,分析出肯定是由于去下载国外镜像源的网络原因造成。因此我们使用docker都需要配置镜像加速器。

可在控制台中检索容器镜像服务进入到对应的服务页面,然后选择镜像中心-镜像加速器,即可根据参考文档进行配置。

image-20221122200859269.png

# 修改为对应的镜像加速器地址。
[root@hecs-test ~]# vim /etc/docker/daemon.json
{"registry-mirrors": [ "https://xxxxxxxxxxxxxxxxxxx.mirror.swr.myhuaweicloud.com" ]
}
[root@hecs-test ~]# systemctl daemon-reload 
[root@hecs-test ~]# systemctl restart docker
[root@hecs-test ~]# docker info 
Containers: 0Running: 0Paused: 0Stopped: 0
Images: 0
Server Version: 18.09.0
Storage Driver: overlay2Backing Filesystem: extfsSupports d_type: trueNative Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:Volume: localNetwork: bridge host macvlan null overlayLog: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: 69663f0bd4b60df09991c08812a60108003fa340
init version: fec3683
Security Options:seccompProfile: default
Kernel Version: 3.10.0-1160.53.1.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 1.794GiB
Name: hecs-test
ID: FIX3:LYRG:DWX5:OHQC:MF5R:6YGK:WZW6:BJ54:GNIF:ZKFV:NZSD:LZBS
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:127.0.0.0/8
Registry Mirrors:https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.mirror.swr.myhuaweicloud.com/
Live Restore Enabled: false
Product License: Community Engine

使用命令测试镜像下载,可顺利下载对应的镜像。

image-20221122201504006.png

然后重新执行部署任务,可看到任务执行成功。在HECS查看到所需的镜像也已经进行下载,查看容器的运行情况也可知所需的容器已经在运行。

image-20221122202014596.png

至此,部署任务已经成功完成,可进行后续的安装。


安装及访问WordPress

应用部署任务执行成功后,就可以在浏览器进行访问。
访问地址:http://ECS公网IP:8000(ECS公网IP即之前步骤里创建的ECS的公网IP,可在控制台进行查询)
出现如下界面,表示部署成功。

image-20221122210035974.png

如果不能访问,记得去检查一下安全组是否添加了对应的规则:

image-20221122203142878.png


选择简体中文->继续
设置站点标题、用户名、密码及电子邮件后,点击安装WordPress

image-20221122210430506.png

若WordPress安装完成,会如下图所示:
image-20221122210512715.png


登录网站管理后台

点击登录,填入安装过程中所设置的用户名及密码,登录博客网站后就可以开始建设和运营了。
登录网站,可在页面见到网站仪表盘

image-20221122210633102.png


访问网站

设置->常规页面查看站点地址(URL),即可知道如何访问通过WordPress搭建的博客网站。

image-20221122210814717.png


输入URL进行测试访问:

image-20221122210908225.png

至此,已完成整个项目的部署。


完善部署模板

回想部署的整个过程,遇到的错误是由于没配置镜像加速器导致,因此,可以完善参考文档中没有提及的设置。

在原有模板文件中添加新的shell命令,把镜像加速器的配置和重启服务的命令添加到其中:

image-20221122212058177.png

完善模板后再次执行任务,会看到任务很快就部署完毕。

image-20221122212013932.png

可能有小伙伴会问,为什么这次执行这么快,因为这是 Ansible幂等性的特征,从平台部署的日志输出中,可知道平台运用了JenkinsAnsible来进行发布部署。感兴趣的小伙伴可查阅相关文档进行学习。


资源释放

本次实验用到的DevCloud用户数小于等于5是不计费的,ECS是按需计费,如果不再使用,避免持续计费,需要进行资源释放操作。(此操作步骤是按需计费的小伙伴才需要进行操作,避免产生不必要的费用。)
回到ECS列表页,按下图进行ECS资源释放。

image-20221120232318846.png

image-20221120232359700.png

删除资源需要使用注册的邮箱/手机等方式进行身份验证,按引导操作即可。


使用总结

此次整个项目的部署过程,按着参考文档来进行,但期间还是出现了错误,导致项目执行失败。当出现错误的时候,项目的排错就涉及很多知识点了,没一定的技术功底或者一定的工作经验,是很难排错的。

尤其对于一些初学者,去直接测试这个是不太合适的,除非,有各种参考文档可供参考。这也是金鱼哥去测试使用并写下这篇文章的原因之一,希望金鱼哥的分享能帮助到大家。

从这项目的部署使用中,发现了平台使用了Jenkins,Ansible,Docker,Docker-compose等技术,当然,操作系统基础是必须的,因为服务是要部署到ECS中,如果有相关问题,就需要去到系统中进行各种排查。因此,还需要巩固基础技能。

不知道大家对此云服务有何感想,心动不如行动,动动手去体验一下更直观,更能体验到华为云用心打造的产品。


【购物节已开启,个人开发者的专属集市AppBazaar来啦(所有商品购物节期间免费体验)】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/381337
此外,在(https://bbs.huaweicloud.com/activity/suggestion.html)提出您的宝贵建议,标题以【云驻计划-定向征文】开头,还有机会赢取额外奖励。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_71933.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据Hadoop教程-01大数据导论与Linux基础

目录 01、大数据导论 02、Linux操作系统概述 P007 P008 P009 P010 P011 P012 P013 P014 P015 P016 P017 01、大数据导论 企业数据分析方向 现状分析(分析当下的数据):现阶段的整体情况,各个部分的构成占比、发展、变…

揭开JavaWeb中Cookie与Session的神秘面纱

文章目录1,会话跟踪技术的概述2,Cookie2.1 Cookie的基本使用2.2 Cookie的原理分析2.3 Cookie的使用细节2.3.1 Cookie的存活时间2.3.2 Cookie存储中文3,Session3.1 Session的基本使用3.2 Session的原理分析3.3 Session的使用细节3.3.1 Session…

通过命令行快速了解电脑CPU架构

Linux 和 MacOS 使用终端(小黑窗)执行下面的命令,根据输出结果查表: uname -m输出 的内容分别对应架构 输出对应架构i386, i686i386x86_64amd64arm, armelarm_garbagearmv7l, armhfarmv7*mipsmips*mips64mips64*Window 按 WinR …

【强化学习】解决gym安装Atari2600环境gym[atari,accept-rom-license] RuntimeError 无法下载Roms的问题

先上Roms.tar.gz安装地址:Roms.tar.gz 以下内容是解决问题的思路,如果已经完全知道问题原因可以直接跳过 安装gym[accept-rom-license]时会出现安装失败的情况: 先是卡在:Building wheel for AutoROM.accept-rom-license 然后是显示安装失败…

预告|2月25日 第四届OpenI/O 启智开发者大会昇腾人工智能应用专场邀您共启数字未来!

如今,人工智能早已脱离科幻小说中的虚构想象,成为可触及的现实,并渗透到我们的生活。随着人工智能的发展,我们正在迎来一个全新的时代——数智化时代。数据、信息和知识是这个时代的核心资源,而人工智能则是这些资源的…

感知数据温度,聚焦海量冷数据存储难题

在信息科技高速发展的背景之下,海量数据已经让拥有者和管理者应接不暇,根据IDC发布的《数据时代2025》预测,全球数据圈(数据圈代表每年被创建、采集或是复制的数据集合)将从2018 年的32ZB增至2025年的175ZB。2018年&am…

骨传导耳机工作原理,骨传导耳机优缺点

骨传导耳机虽说最近是十分火爆的一款单品,但还是有很多人对骨传导耳机不是很了解,骨传导耳机更多使用场景还是在户外运动使用,骨传导耳机对于长时间使用耳机的人来说十分友好,这主要还是得益于骨传导耳机传输声音的特殊性。 下面我…

【轻量级自适应加权网络:超分】

Lightweight adaptive weighted network for single image super-resolution (单幅图像超分辨率的轻量级自适应加权网络) 近年来,深度学习已成功应用于单幅图像超分辨率(SISR)任务,并取得了上级的性能。然…

Django使用jinja2模板

Django使用jinja2模板 jinja2介绍 Jinja2:是 Python 下一个被广泛应用的模板引擎,是由Python实现的模板语言,他的设计思想来源于 Django 的模板引擎,并扩展了其语法和一系列强大的功能,尤其是Flask框架内置的模板语言…

异步执行结果-Callable、Future、FutureTask

Callable 实现Runnable接口的任务执行没有返回值&#xff0c;如果我们希望线程运算后将结果返回&#xff0c;应该使用Callable。Callable代表有返回值的任务。 class CallTask implements Callable<String> {Overridepublic String call() throws Exception {return Th…

前端开发环境搭建

文章目录Node.js是什么安装查看版本入门示例NPM使用 npm 命令安装模块常见命令使用淘宝 NPM 镜像TypeScript安装入门示例从github拉取构建项目如何从零创建一个TypeScript项目规划目录结构新建项目Web App运行服务添加依赖打包使用browserify打包使用webpack打包推荐流程目录配…

以学校数据模型为例,掌握在DAS下使用GaussDB

文章目录题目具体操作一、表的创建二、表数据的插入三、数据查询目的&#xff1a; 这里以学校数据库模型为例&#xff0c;介绍GaussDB数据库、表等常见操作&#xff0c;以及SQL语法使用的介绍。题目 假设A市B学校为了加强对学校的管理&#xff0c;引入了华为GaussDB数据库。 在…

GEE学习笔记 六十三:新的地图图层ui.Map.CloudStorageLayer

在GEE中导出数据有一种方式是直接导出地图到Google Cloud Storage中&#xff0c;也就是Export.map.toCloudStorage(xxx)&#xff0c;这种方式是将我们计算生成影像导出成为静态瓦片的格式存放在Google Cloud Storage中。我们可以在其他的前端程序比如OpenLayer、Mapbox GL JS等…

实时数仓Hologres新一代弹性计算组实例技术揭秘

作者&#xff1a;王奇&#xff08;花名慧青&#xff09; 阿里云Hologres研发 随着实时数仓在业务生产系统的普及&#xff0c;资源弹性、资源隔离等保障业务稳定性方面的技术需求开始变得越来越迫切。Hologres在保障业务方面持续优化核心技术竞争力&#xff0c;过去一年中&…

自建商城或会员系统如何对接在线客服咨询系统,例如商城系统、物流订单系统接入在线客服功能...

自建商城或会员系统如何对接在线客服咨询系统&#xff0c;例如商城系统、物流订单系统接入在线客服功能 对接在线客服咨询系统可以帮助您的客户更快地获得问题解答和支持&#xff0c;提升客户满意度和忠诚度。 在商品详情页面传递产品信息 在进入产品详情页面以后&#xff0c;需…

FPGA 20个例程篇:20.USB2.0/RS232/LAN控制并行DAC输出任意频率正弦波、梯形波、三角波、方波(一)

在最后一个例程中笔者精挑细选了一个较为综合性的项目实战&#xff0c;其中覆盖了很多知识点&#xff0c;也是从一个转产产品中所提炼出来的&#xff0c;所以非常贴近实战项目。 整个工程实现了用户通过对上位机PC端人机界面的操作&#xff0c;即可达到控制豌豆开发并行DAC输出…

计算时间序列周期的三种方法

周期是数据中出现重复模式所需的时间长度。更具体地说&#xff0c;它是模式的一个完整周期的持续时间。在这篇文章中&#xff0c;将介绍计算时间序列周期的三种不同方法。 我们使用City of Ottawa 数据集&#xff0c;主要关注的是每天的服务呼叫数量。所以不需要对病房名称进行…

选型最佳实践|从业务场景分析直播SDK

摘要 近两年即时通讯/直播产品炙手可热&#xff0c;市场上针对ToB的产品日益增多&#xff0c;企业该如何去选型呢&#xff1f;本文分享了笔者对于直播产品的思考&#xff0c;将从直播SDK实例功能特性、常见业务场景、注意事项及最佳实践等方面介绍如何进行实例选型&#xff0c;…

【C++】2.类和对象(上)

1.面向过程和面向对象 C语言是面向过程的&#xff0c;关注的是过程&#xff0c;分析出求解问题的步骤&#xff0c;通过函数调用逐步解决问题。C是基于面向对象的&#xff0c;关注的是对象&#xff0c;将一件事情拆分成不同的对象&#xff0c;靠对象之间的交互完成。 2.类的引入…

Umi框架

什么是 umi umi 是由 dva 的开发者 云谦 编写的一个新的 React 开发框架。umi 既是一个框架也是一个工具&#xff0c;可以将它简单的理解为一个专注性能的类 next.js 前端框架&#xff0c;并通过约定、自动生成和解析代码等方式来辅助开发&#xff0c;减少开发者的代码量。 u…