写点什么

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

  • 2025-09-11
    中国香港
  • 本文字数:2727 字

    阅读完需:约 9 分钟

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

1 概述

1.1 背景介绍

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

1.2 适用对象

  • 企业

  • 个人开发者

  • 高校学生

1.3 案例时间

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

1.4 案例流程


说明:


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

1.5 资源总览

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

体验完整案例请点这里👉️👉️👉️使用云主机CodeArts IDE进行远程JVM服务调试

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

2.1 前置条件

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

2.2 配置虚拟私有云 VPC

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



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



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



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



2.3 配置弹性公网 IP EIP

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



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



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




2.4 配置安全组

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



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




2.5 购买 ECS 云主机

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



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



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









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


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

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



选择“VNC 登录”。



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



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


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.rpmyum -y install mysql57-community-release-el7-10.noarch.rpmyum -y install mysql-community-server --nogpgchecksystemctl start mysqldsystemctl enable mysqld
复制代码


查看 MySQL 运行状态。


systemctl status mysqld.service
复制代码



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


grep 'temporary password' /var/log/mysqld.log
复制代码


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


mysql_secure_installation
复制代码





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


mysql -u root -p
复制代码



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


create database `e-commerce`;
复制代码


切换到 e-commerce 库:


use `e-commerce`;
复制代码


执行以下初始化脚本:


source /opt/E-Commerce-Java/db_init_test.sql
复制代码


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


select * from cart;
复制代码


3 CodeArts Deploy 部署任务配置

3.1 部署环境配置

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



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



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



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



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



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



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



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



点击“基础资源管理”。



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



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



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



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



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



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




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



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



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



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



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



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



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



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



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


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

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



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



选择“VNC 登录”。



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



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


docker ps -a
复制代码


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



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


docker logs 容器ID
复制代码


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



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

4 附录

4.1 获取 SWR 容器镜像地址

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



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



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



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


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


4.2 获取 SWR 仓库参数

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



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



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



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


docker login -u cn-north-4@XXX -p XXX swr.cn-north-4.myhuaweicloud.com
复制代码



用户头像

提供全面深入的云计算技术干货 2020-07-14 加入

生于云,长于云,让开发者成为决定性力量

评论

发布
暂无评论
告别部署难题:基于华为开发者空间的CodeArts Deploy容器化部署解决方案_JVM_华为云开发者联盟_InfoQ写作社区