Jenkins+Kubernetes CI/CD

Jenkins + Kubernetes CI/CD
步骤如下

  1. 安装Kubernetes集群
  2. 开通容器镜像服务,创建镜像仓库,如ycdocker/demo
  3. 在集群外的ECS上安装Jenkins
  4. 在Jenkins所在ECS安装kubectl,用以访问Kubernetes集群

    wget https://dl.k8s.io/v1.10.6/kubernetes-client-linux-amd64.tar.gz
    tar -xvf kubernetes-client-linux-amd64.tar.gz
    cd kubernetes/client/bin
    chmod +x ./kubectl
    sudo mv ./kubectl /usr/local/bin/kubectl
    mkdir /root/.kube
    vi /root/.kube/config
  5. 安装Docker

    
    # step 1: 安装必要的一些系统工具
    sudo apt-get update
    sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
    # step 2: 安装GPG证书
    curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
    # Step 3: 写入软件源信息
    sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
    # Step 4: 更新并安装 Docker-CE
    sudo apt-get -y update
    sudo apt-get -y install docker-ce
  6. 安装maven apt-get install maven -y
  7. 选择Spring Boot Demo项目,Dockerfile放根目录

    FROM openjdk:8-jdk-alpine
    VOLUME /tmp
    ARG JAR_FILE
    COPY ${JAR_FILE} app.jar
    ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
  8. 上传代码到Git
  9. 登陆Jenkins,创建free style项目
  10. 配置Jenkins从Git取代码
  11. 添加构建步骤,Shell脚本如下
mvn clean package
docker build --build-arg JAR_FILE=target/gs-spring-boot-docker-0.1.0.jar -t registry.cn-beijing.aliyuncs.com/ycdocker/demo:$BUILD_NUMBER .
docker login --username=***** --password=***** registry.cn-beijing.aliyuncs.com
docker push registry.cn-beijing.aliyuncs.com/ycdocker/demo:$BUILD_NUMBER
kubectl set image deployment/demo demo=registry.cn-beijing.aliyuncs.com/ycdocker/demo:$BUILD_NUMBER
  1. 修改代码测试效果
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/623106

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。