快速部署-02-构建发布

简介: 使用Jenkins构建应用并构建docker镜像发布到自己阿里云镜像仓库
+关注继续查看

jenkins

传统的我们在发布应用或者升级的时候都是把war包放到对应tomcat目录下或者替换class但是这样极容易出错,由此我们将使用jenkins+docker来解决此问题

部署jenkins

# 若目录不一样自行变更
mkdir -p /data/jenkins
# 目录附权限
chown -R 1000:1000 /data/jenkins
# 启动jenkis
# jenkins定制dockerfile https://github.com/duanzonglong/docker-jenkins-gradle.git
docker run -d --restart=always --name jenkins -e TZ=Asia/Shanghai  -v /data/jenkins:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock --privileged=true -p 8080:8080 duanzonglong/docker-jenkins-gradle:lst
#若推送镜像时提示Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock
chmod 777 /var/run/docker.sock

特别说明此镜像中已经安装了maven docker gradle node cnpm等工具因此不需要在jenkins做单独配置

jenkins构建项目

这里我们演示使用开源的springcloud框架cloud-admin项目演示打包发布的整套流程
具体项目需要做些调整请参考cloudadmin
image
添加构建脚本
image
执行完成后在服务器中查询生成的镜像
image

镜像推送阿里仓库

首先申请自己的阿里云镜像仓库申请地址

  • 创建自己的命名空间
  • 创建仓库

先手动推送镜像到自己的仓库

#登录仓库
docker login --username=xxx(自己的账号) registry.cn-hangzhou.aliyuncs.com

docker tag ag/ace-center:latest registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-center:latest
docker push registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-center:latest
docker rmi ag/ace-center:latest
docker rmi registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-center:latest

docker tag ag/ace-auth:latest registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-auth:latest
docker push registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-auth:latest
docker rmi ag/ace-auth:latest
docker rmi registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-auth:latest


docker tag ag/ace-gate:latest registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-gate:latest
docker push registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-gate:latest
docker rmi ag/ace-gate:latest
docker rmi registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-gate:latest

docker tag ag/ace-admin:latest registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-admin:latest
docker push registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-admin:latest
docker rmi ag/ace-admin:latest
docker rmi registry.cn-hangzhou.aliyuncs.com/cloud-admin/ace-admin:latest

请将cloud-admin替换为自己的命名空间
如果是在阿里云服务器上构建可以将镜像地址换成内网registry-internal.cn-hangzhou.aliyuncs.com

rancher

镜像构建出来后,如何发布到生产环境或者测试环境可以选用docker相关的管理工具,这里我们选用rancher
部署命令

## 单机安装 若需要支持高可用请参考rancher官网
docker run -d -v /data/rancher/mysql:/var/lib/mysql --restart=unless-stopped -p 8080:8080 rancher/server

添加主机节点
image

相关文章
|
3月前
|
关系型数据库 MySQL Java
快速部署框架
快速部署框架
25 0
|
4月前
|
运维 前端开发 jenkins
前端自动化集成部署交付实践
随着前后端分离应用模式的推广,前端项目可独立部署维护上线,不再仅仅将前端开发后打包的文件直接丢到一个文件目录下就完事大吉了,现在对前端来说也需要了解运维的相关知识,本文旨在介绍一些相关的运维概念以及一些前端运维的实践。
135 0
|
10月前
|
XML JavaScript Cloud Native
云原生之使用Docker部署kkFileView在线文档管理平台
云原生之使用Docker部署kkFileView在线文档管理平台
1240 0
云原生之使用Docker部署kkFileView在线文档管理平台
|
存储 消息中间件 缓存
SREWorks v1.2 版本发布 | 运维市场能力发布
在v1.1版本发布之后,SREWorks团队开始了常态化的功能版本迭代,v1.1提供了组件插拔能力,v1.2更进一步,将会发布规划已久的运维市场,助力团队构筑运维生态,也会发布诸多企业用户关注的纯内网源码构建方案。
|
Linux Go iOS开发
构建多架构镜像的最佳实践
如今,Docker 容器镜像可以支持多种架构/平台,多架构镜像的构建已经成为了必备技能。
970 2
构建多架构镜像的最佳实践
|
运维 Kubernetes 监控
KubeVela 1.1 发布,开启混合环境应用交付新里程碑
KubeVela 作为一个开箱即用、面向现代微服务架构的应用交付与管理平台,今天正式发布了 1.1 版本,以更加用户友好和完善的功能集,开启了“让混合环境应用交付更加简单高效”的重要里程碑。
KubeVela 1.1 发布,开启混合环境应用交付新里程碑
|
存储 Prometheus Kubernetes
分布式应用打包交付运行的解决方案sealer
通过把分布式应用及其数据库中间件等依赖一起打包以解决复杂应用的交付问题。
|
运维 Kubernetes Cloud Native
KubeVela 成为 CNCF 沙箱项目,让云端应用交付更加简单
KubeVela 就是这样一个面向用户的上层平台项目。对于业务开发者来说,KubeVela 简单、易用,它可以让开发者以极低的心智负担和上手成本在 Kubernetes 上定义与部署应用... 但更重要的是,对于平台团队来说,KubeVela 可不是一个简单的 PaaS 或者 Serverless,它是一个能够以 Kubernetes 原生的方式进行任意扩展的 PaaS 内核,平台工程师可以基于它构建出任意的垂直业务系统。
KubeVela 成为 CNCF 沙箱项目,让云端应用交付更加简单
|
存储 运维 Kubernetes
Rainbond 开源 5.3.1 发布,支持100+组件一键云原生交付
Rainbond是云原生且易用的应用管理平台。云原生应用交付的最佳实践。专注于以应用为中心的理念。赋能企业搭建云原生开发云、云原生交付云。 近一年,使用Rainbond 云原生应用交付流程(见下图)的开源用户成为主流,面对不同用户的业务复杂性,对Rainbond交付流程的性能提出了新的要求。从 5.3.0 版本发布以来4个月的时间,Rainbond 开发者以交付链路的性能优化为主要迭代方向。
242 0
Rainbond 开源 5.3.1 发布,支持100+组件一键云原生交付
|
Kubernetes 测试技术 Linux
容器云之K8s自动化安装方式的选择
目前kubernetes 已经发展到1.5的时代,但在这之前学习和使用kubernetes还是走了不少弯路,第一个问题就是安装,也许你会说安装很简单。照着官网或网上抄一篇就可以装上了…… 而我们使用kubernetes是1.1和1.2版本的时候,那时候最权威的文档应该就是kubernetes.io官网文档……,然而我们在官网进行问题检索的时候会出现(这张图来源网络) 这张图已经很明说明问题了……由于安装过程中的存在的问题,造成之后在使用过程中的一系列问题…… 随着kubernetes的发展(目前已经到达1.5 beta版),和之前相比官方文档也已经更加完善。
2399 0
相关产品
云迁移中心
推荐文章
更多