美文网首页
发布部署应用

发布部署应用

作者: 暗夜精灵_NightElf | 来源:发表于2019-07-09 13:36 被阅读0次

jenkins新建立一个new Item ,点击构建一个maven项目

勾选Discard old builds后填入如下:

勾选This project is parameterized后填入如下:

配置GIT地址

https://github.com/ruanch/SpringBootDemo.git

配置MAVEN脚本命令

clean package

增加构建后的配置脚本:

#!/bin/sh

jarName=spring-boot-demo-0.0.1-SNAPSHOT.jar

jarFolder=ph

projectName=ph

docker_path=${WORKSPACE}

cp ${WORKSPACE}/target/${javName} ${docker_path}

sh /root/docker_dir/deploy_docker.sh ${projectName} ${docker_path} ${jarName}

在/root/docker_dir/deploy_docker.sh中写入:

#!/bin/sh

#maven01 $workspace $jarname

#${projectName} ${docker_path} ${jarName}

set -e

projectName=$1

docker_path=$2

appName=$3

#user_name=

#password=

tag=$(date +%s)

server_path=10.20.16.146:5000

target_image=${projectName}:${tag}

#${BUILD_NUMBER}

echo ${target_image}

cd ${docker_path}

docker build --build-arg app=${appName} -t ${target_image} .

docker tag ${target_image} ${server_path}/${projectName}

echo The name of image is "${server_path}\/${target_image}"

docker push ${server_path}/${projectName}:latest

docker rmi -f $(docker images | grep ${projectName} | grep ${tag} |awk '{print $3}' | head -n 1)

NODE服务器免密登录到Master机器上:

ssh-keygen -t rsa

ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.20.17.177

如果出现root无法登录执行以下命令

apt-get install -y openssh-server

vim /etc/ssh/sshd_config

将PermitRootLogin 的值改为yes

PermitEmptyPasswords为 no

systemctl restart ssh.service

在jenkins项目中增加shell脚本.

把jar包中的yaml文件传到master服务器并启动

set -e

echo ok

echo ${WORKSPACE}

docker_path=${WORKSPACE}

scp ${WORKSPACE}/*.yaml 10.20.17.177:/root/

ssh 10.20.17.177 '/opt/bin/kubectl apply -f /root/kube.yaml'

ssh 10.20.17.177 'opt/bin/kubectl get svc|grep maven'

会报

Step 1/4 : FROM registry-scu.cloudtogo.cn/ubuntu:jdk

Gethttps://registry-scu.cloudtogo.cn/v2/: dial tcp 106.75.145.94:443: connect: connection refusedBuild step 'Execute shell' marked build as failure

写入vim /etc/docker/daemon.json

加入registry-scu.cloudtogo.cn

然后执行重启一下docker

systemctl daemon-reload

systemctl restart docker

查看master结点状态情况:

swapoff -a (NODE没有ready的情况结点上面关掉)

sudo kubectl get node

kubectl get po --all-namespaces|grep maven

kubectl describe po maven-deployment-d974b777-9kdk5 -n default

最后发布成功了。访问31002端口即可:

相关文章

  • 发布部署应用

    jenkins新建立一个new Item ,点击构建一个maven项目 勾选Discard old builds后...

  • Nuxt.js部署及踩过的坑

    原文地址:lewis1990@amoy Nuxt.js 提供了两种发布部署应用的方式:服务端渲染应用部署 和 静态...

  • Vue、React前端项目打包部署

    前端单页面应用部署 前端打包上线部署方案之 hash路由模式 对于hash路由模式打包的单页面应用,直接发布到服务...

  • 《持续交付》——第一章--软件交付的问题

    部署流水线 指一个应用程序从构建,部署,测试到发布整个过程的 自动化 实现 部署流水线的目标 让软件从构建,部署,...

  • Kubernetes 部署策略详解

    原文链接:Kubernetes 部署策略详解 在Kubernetes中有几种不同的方式发布应用,所以为了让应用在升...

  • 8.3 RabbitMQ消息消费

    一般消费消息的应用会单独部署,不会和发布消息的应用部署到一起,所以本节也单独讲一下。 1.maven依赖、appl...

  • 从应用开发角度认识 K8S

    简介:刘晨 Lorraine 坐标Fintech,精通持续集成与发布,曾具有全平台100+应用持续部署持续发布实战...

  • SpringCloud微服务实战——搭建企业级开发框架(三十四)

      SpringCloud微服务包含多个SpringBoot可运行的应用程序,在单应用程序下,版本发布时的打包部署...

  • Docker 基础

    Docker的应用场景 Web 应用的自动化打包和发布。 自动化测试和持续集成、发布。 在服务型环境中部署和调整数...

  • Docker 简介和安装

    Docker的应用场景 Web 应用的自动化打包和发布。 自动化测试和持续集成、发布。 在服务型环境中部署和调整数...

网友评论

      本文标题:发布部署应用

      本文链接:https://www.haomeiwen.com/subject/ydhyhctx.html