springboot docker jenkins 自動化部署並上傳映象
阿里雲開源映象站:
https://developer.aliyun.com/mirror/?utm_content=g_1000303593
springboot + docker + jenkins自動化部署專案,jenkins、mysql、redis都是docker執行的,並且沒有使用虛擬機器,就在阿里雲伺服器(centos7)執行
1、前期準備工作不說了
2、在專案根目錄下新建Dockerfile
Dockerfile檔案內容為:
#基礎映象 FROM openjdk:12 #作者 MAINTAINER demo <demo@qq.com> VOLUME /tmp #指定配置檔案,以及jar包在伺服器上的路徑 ENTRYPOINT ["java","-Dspring.profiles.active=prod","-jar","/lcy/work/tools/tools.jar"] #暴露埠 EXPOSE 8092
3、在伺服器找個目錄新建一個.sh 檔案
#!/bin/sh echo '================開始構建映象==============' #映象名稱 IMAGE_NAME='registry.cn-beijing.aliyuncs.com/???/tools' #打包後在jenkins的地址 SOURCE_PATH='/lcy/jenkins/workspace/tools' #Dockerfile執行jar包的地址 BASE_PATH='/lcy/work/tools' echo IMAGE_NAME=$IMAGE_NAME echo '================複製JAR包===================' echo $SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jar cp $SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jar $BASE_PATH/tools.jar chmod -R 777 $BASE_PATH/tools.jar echo '================複製完成====================' echo '================當前docker版本==============' docker -v echo '================構建映象開始================' docker build -t $IMAGE_NAME -f $SOURCE_PATH/Dockerfile . echo '================構建映象結束================' #輸入要推送映象的地址,根據映象倉庫提示的地址複製 echo '================推送映象開始================' docker login --username=??? --password=??? registry-vpc.cn-beijing.aliyuncs.com docker push $IMAGE_NAME echo '================推送映象結束================' echo '================獲取容器id==================' CID=$(docker ps | grep "$IMAGE_NAME" | awk '{print $1}') echo 容器id=$CID echo '================獲取映象id==================' IID=$(docker images | grep "$IMAGE_NAME" | awk '{print $3}') echo 映象id=$IID if [ -n "$CID" ]; then echo 存在$IMAGE_NAME容器,停止容器並刪除 docker stop tools docker rm tools else echo 不存在$IMAGE_NAME容器,開始啟動 docker run -p 8092:8092 -d --name tools -v $BASE_PATH:$BASE_PATH $IMAGE_NAME fi
4、配置jenkins,執行新建的.sh(記得給好許可權)其它的配置就不說了,比如github的配置
5、執行結果
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70003733/viewspace-2843747/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Jenkins+Docker+Gitee+SpringBoot自動化部署JenkinsDockerGiteeSpring Boot
- Jenkins + Docker + Gitee自動化部署SpringBoot應用JenkinsDockerGiteeSpring Boot
- Docker 之 Jenkins自動化部署DockerJenkins
- Gogs+Jenkins+Docker 自動化部署.NetCoreGoJenkinsDockerNetCore
- Jenkins + Docker + ASP.NET Core自動化部署JenkinsDockerASP.NET
- Jenkins自動化部署SpringBoot多模組專案JenkinsSpring Boot
- Docker - 使用 Jenkins 映象建立容器,並搭建 Python + Pytest +Allure 的自動化測試環境DockerJenkinsPython
- Docker 搭建 Jenkins 實現自動部署DockerJenkins
- 阿里出品!SpringBoot應用自動化部署神器,IDEA版Jenkins?阿里Spring BootIdeaJenkins
- 使用Jenkins自動構建Android應用打包並上傳JenkinsAndroid
- android使用jenkins進行自動化打包並且上傳到fir或者蒲公英AndroidJenkins
- Jenkins 自動化(CI/DI)部署Jenkins
- vue 自動化部署 jenkins 篇VueJenkins
- docker製作自己的映象並上傳dockerhubDocker
- docker-compose+ jenkins + gogs+ maven自動化構建與部署DockerJenkinsGoMaven
- 從零搭建docker+jenkins+node.js自動化部署環境DockerJenkinsNode.js
- GitLab + Jenkins + ACK 自動化部署方案GitlabJenkins
- 陷入jenkins自動化部署的坑Jenkins
- 基於Jenkins Pipeline自動化部署Jenkins
- Docker+LNMP+Jenkins+ 碼雲實現 PHP 程式碼自動化部署DockerLNMPJenkinsPHP
- 前端使用docker+jenkins實現自動打包部署前端DockerJenkins
- 使用Jenkins自動化部署Java專案JenkinsJava
- jenkins自動化專案部署實戰Jenkins
- Jenkins 構建自動化 .NET Core 釋出映象Jenkins
- 【實踐】Docker for Windows 製作tomcat 映象並上傳至 docker 倉庫DockerWindowsTomcat
- Jenkins自動部署配置Jenkins
- Docker:Docker部署Jenkins並共用宿主機Docker部署微服務多模組(一)Jenkins部署及外掛環境搭建DockerJenkins微服務
- Windows+.NetCore+git+IIS在Jenkins上的自動化部署入門WindowsNetCoreGitJenkins
- jenkins + GitHub 實現專案自動化部署JenkinsGithub
- 使用 Jenkins + Ansible 實現自動化部署 NginxJenkinsNginx
- 乞丐版自動化部署 jenkins 環境搭建Jenkins
- docker 部署jenkinsDockerJenkins
- 最詳細之教你Jenkins+github自動化部署.Net Core程式到DockerJenkinsGithubDocker
- SpringBoot手動部署到Tomcat和自動化熱部署Spring BootTomcat熱部署
- Jenkins自動部署spring bootJenkinsSpring Boot
- Docker 如何把映象上傳到docker hubDocker
- Docker 之 Spring Boot 自動化部署DockerSpring Boot
- SpringBoot專案打成Docker映象並推送阿里雲Spring BootDocker阿里