告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

内容分享1天前发布
0 0 0

1 概述

1.1 背景介绍

华为云部署服务CodeArts Deploy提供可视化、一键式部署服务,支持部署到虚拟机或者容器,提供Tomcat、SpringBoot等模板或者自由组装编排原子步骤进行部署,支持并行部署和流水线无缝集成,实现部署环境标准化和部署过程自动化。

1.2 适用对象

  • 企业
  • 个人开发者
  • 高校学生

1.3 案例时间

本案例总时长预计30分钟。

1.4 案例流程

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

说明:

① 购买云资源并初始化配置
② 初始化配置项目部署和运行环境;
③ 通过CodeArts Deploy服务对镜像服务进行部署;

1.5 资源总览

本案例预计花费总计0.1561元。

资源名称

规格

单价(元)

时长(h)

CodeArts

体验版

免费

0.5

容器镜像服务SWR

免费

免费

0.5

弹性云服务器ECS

1U4G

0.2292元/小时

0.5

弹性公网IP

按带宽计费

0.083元/小时

0.5

虚拟私有云VPC

免费

免费

0.5

网络安全组

免费

免费

0.5

最新案例动态,请查阅《基于CodeArts Deploy的容器化部署最佳实践》「链接」。小伙伴快来领取华为开发者空间进行实操体验吧!

2 资源部署环境初始化申请与配置

2.1 前置条件

参考“基于CodeArts Build的项目容器化构建”「链接」完成容器镜像在SWR容器镜像服务中的归档。

2.2 配置虚拟私有云VPC

进入华为云「链接」首页,在华为云的首页右上方,点击“登录”,在弹出的对话框中输入自己的用户名和密码。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

在华为云首页,在搜索框中输入“虚拟私有云 VPC”,点击“控制台”进入虚拟私有云控制台页面。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

选择“北京四”,点击“我的VPC”,然后点击右上角的“创建虚拟私有云”按钮,进入创建虚拟私有云页面,按照下图配置完成虚拟私有云的创建。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

参考以下配置进行VPC的配置。

配置项

规格

区域

华北-北京四

名称

vpc-DISCUZ(可自定义)

企业项目

default(可选择自己的其他项目,无则不填写)

子网名称

vpc-test(可自定义)

可用区

可用区1

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

2.3 配置弹性公网IP EIP

浏览器切换到华为云主页,在搜索框中输入“弹性公网IP EIP”,点击下方的“控制台”进入弹性公网IP服务页面。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

点击右上角的“购买弹性公网IP”按钮,进行弹性公网IP的购买。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

参考以下配置完成弹性公网IP创建。

配置项

规格

计费模式

按需计费

区域

华北-北京四

线路

全动态BPG

公网带宽

按带宽计费

带宽大小

1

带宽名称

自定义

弹性公网IP名称

discuz_ip(可自定义)

企业项目

default(可选择自己的其他项目,无则不填写)

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

2.4 配置安全组

点击“网络控制台”左侧菜单栏的“安全组”,点击右上角“创建安全组”来创建安全组并添加规则。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

参考以下配置完成安全组的创建。

配置项

规格

区域

华北-北京四

名称

sg-DISCUZ(可自定义)

企业项目

default(可选择自己的其他项目,无则不填写)

入方向规则

22,3389,80,443,8080,8888

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

2.5 购买ECS云主机

浏览器切换到华为云主页,在搜索框中输入“弹性云服务器 ECS”点击“控制台”进入弹性云服务页面。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

点击右上角的“购买弹性云服务器”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

参考下列配置进行弹性云服务器ecs-DISCUZ01的购买。

配置项

规格

计费模式

按需计费

区域

华北-北京四

可用区

可用区1

CPU架构

X86计算

实例规格

1vCPUs 4GiB(或者其他类似或以上规格)

镜像

公共镜像-CentOS-centOS7.6(本案例是基于Centos系统实现的,如因Centos下线停止更新导致对后续案例环境有要求的用户可以参考Centos停止维护解决方案 解决。

存储与备份

系统盘:高IO-40GiB 数据盘:新增-高IO-500GiB-数量1-磁盘随实例释放

虚拟私有云

vpc-DISCUZ

主网卡

vpc-test

安全组

sg-DISCUZ

弹性公网IP

使用已有

云服务器名称

ecs-DISCUZ01(可自定义)

登录凭证

密码

密码

自定义

企业项目

default(可选择自己的其他项目,无则不填写)

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

购买成功后,返回ECS主机列表即可查看到购买成功的ECS资源了。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

2.6 登录ECS云主机初始化项目数据库

选中我们的ECS云主机,点击后面的“远程登录”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

选择“VNC登录”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

登录用户输入:root,然后输入我们的ECS云主机root账号的密码,回车。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

登录云主机后,在控制台输入以下命令:

复制

yum install -y git

回车安装git工具,然后输入:

复制

cd /opt

回车,然后输入:

复制

git clone https://gitcode.com/guogaoju/E-Commerce-Java.git

回车,进行数据库初始化脚本下载。

然后在控制台输入以下命令进行mysql数据库的安装:

复制

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server --nogpgcheck
systemctl start mysqld
systemctl enable mysqld

查看MySQL运行状态。

复制

systemctl status mysqld.service

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

执行以下命令,获取安装MySQL时自动设置的root用户密码,记录好,后面使用。

复制

grep 'temporary password' /var/log/mysqld.log

执行以下命令,并按照下图回显提示信息进行操作,加固MySQL。

复制

mysql_secure_installation

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

执行以下命令,再根据提示输入数据库管理员root账号的密码进入数据库。

复制

mysql -u root -p

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

执行以下命令,创建数据库:

复制

create database `e-commerce`;

切换到e-commerce库:

复制

use `e-commerce`;

执行以下初始化脚本:

复制

source /opt/E-Commerce-Java/db_init_test.sql

执行成功后,执行以下查询命令查询数据显示如下即表明数据库初始化完成,输入quit退出。

复制

select * from cart;

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

3 CodeArts Deploy部署任务配置

3.1 部署环境配置

登录华为云首页,在搜索框中搜索“CodeArts Deploy”,点击“控制台”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

跳转到CodeArts Deploy服务控制台,点击右上角的“立即使用”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

跳转到CodeArts Deploy服务页面,点击“新建应用”按钮。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

自定义填写基本信息,点击“下一步”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

选择“Docker应用部署-Linux”部署模板,点击“确定”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案


点击“环境管理”标签,然后点击“新建环境”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案


输入环境名称,点击“保存”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

然后点击左侧资源列表,点击“导入主机”按钮。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

点击“基础资源管理”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

点击“新建主机集群”按钮。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

输入集群名称,其他默认,点击“保存”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

点击“添加或导入主机”按钮。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案


选择我们2.5申请的ECS云主机,点击“导入”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

填写ECS云主机的账号密码,端口填写22,点击“确定”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

显示连通性验证成功,即表明云主机已纳管到CodeArts上了。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

返回环境管理页面,点击“刷新”图标,即可看到已纳管的云主机,选中云主机,点击“导入”按钮。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

即可查看到云主机已纳入了部署环境中。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

返回部署任务中,点击“参数设置”页签,host_group参数是应用所部署的主机集群,即选择我们刚刚创建的部署环境docker,image_url是镜像地址,获取请参考 4 附录:4.1 获取SWR容器镜像地址。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

点击“部署步骤”页签,安装Docker任务根据下图进行配置。注意:docker版本选择docker-18.03.0。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

登录Docker镜像仓,其他参数默认,镜像仓点击“新建”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

连接名称自定义,仓库参数,请参考 4 附录:4.2 获取SWR仓库参数。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

镜像仓配置完之后,剩下的任务默认无需修改,直接点击右上角的“保存并部署”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

点击“确定”按钮,即可开始镜像任务的部署。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

查看任务部署成功,即表明镜像已成功部署到ECS云主机上了。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

3.2 登录ECS云主机查看电商项目后端是否成功启动

登录华为云首页,在搜索框中输入“弹性云服务器 ECS”,点击“控制台”进入弹性云服务页面。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

选中我们的ECS云主机,点击后面的“远程登录”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

选择“VNC登录”。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

登录用户输入:root,然后输入我们的ECS云主机root账号的密码,回车。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

登录云主机后,在控制台输入以下命令查看启动的docker镜像信息:

复制

docker ps -a

回车,即可查看到启动的docker信息。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

然后输入以下命令查看docker启动日志:

复制

docker logs 容器ID

将容器ID替换,然后输入命令,回车,即可看到服务已正常启动了。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

至此,基于CodeArts Deploy的容器化部署最佳实践全部结束。

4 附录

4.1 获取SWR容器镜像地址

登录华为云首页,在控制台输入“容器镜像服务SWR”点击控制台登录容器镜像服务SWR控制台。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

选择“北京四”,然后点击左侧的“我的镜像”,点击我们的电商项目镜像。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

复制我们某一版本的下载指令。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

复制

docker pull swr.cn-north-4.myhuaweicloud.com/xxx/e_commerce_java:v1.5

其中docker pull后面的即为SWR的容器镜像地址。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

4.2 获取SWR仓库参数

登录华为云首页,在控制台输入“容器镜像服务SWR”点击控制台登录容器镜像服务SWR控制台。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案


选择“北京四”,然后点击右上角的“登录命令”按钮。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

点击“复制”图标复制命令。

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案


其中,-u后面是“用户名”,-p后面是“密码”,
swr.cn-north-4.myhuaweicloud.com是仓库地址,注意地址前面需要加上“https://”前缀。

复制

docker login 
-u cn-north-4@XXX 
-p XXX 
swr.cn-north-4.myhuaweicloud.com

告别部署难题:华为开发者空间的CodeArts Deploy容器化部署方案

© 版权声明

相关文章

暂无评论

none
暂无评论...