Docker部署SpringBoot項(xiàng)目到云服務(wù)器的實(shí)現(xiàn)步驟
前言
隨著云計(jì)算的普及,越來(lái)越多的開(kāi)發(fā)者選擇將應(yīng)用程序部署到云端。Docker作為一種輕量級(jí)的容器化技術(shù),為開(kāi)發(fā)者提供了快速、便捷的部署方案。本文將探討如何使用Docker將SpringBoot應(yīng)用程序部署到云服務(wù),從而實(shí)現(xiàn)高效、可靠的運(yùn)行環(huán)境。
一、打包運(yùn)行后端項(xiàng)目
1.打包到服務(wù)器步驟
1. 1使用idea右側(cè)Maven的package命令
1.2 在服務(wù)器的/usr/local/下面創(chuàng)建名為docker的文件夾
1.3 將打包好的jar包傳到服務(wù)器上面的/usr/local/docker下面
1.4 編寫(xiě)Dockerfile,同時(shí)將編寫(xiě)好的Dockerfile傳輸?shù)椒?wù)器的/usr/local/docker下面
FROM openjdk:8 VOLUME /tmp ADD aurora-springboot-0.0.1.jar blog.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/blog.jar"]
注意:這里有可能你沒(méi)下載jdk會(huì)報(bào)錯(cuò),Dockerfile文件只需要上傳到指定目錄下即可,不需要手動(dòng)執(zhí)行其他操作。
2.編寫(xiě)aurora-start.sh,同時(shí)將編寫(xiě)好的aurora-start.sh上傳到服務(wù)器的/usr/local/docker下面
SOURCE_PATH=/usr/local/docker
SERVER_NAME=aurora-springboot-0.0.1.jar
TAG=latest
SERVER_PORT=8080
CID=$(docker ps | grep "$SERVER_NAME" | awk '{print $1}')
IID=$(docker images | grep "$SERVER_NAME" | awk '{print $3}')
if [ -n "$CID" ]; then
echo "存在容器$SERVER_NAME,CID-$CID"
docker stop $CID
echo "成功停止容器$SERVER_NAME,CID-$CID"
docker rm $CID
echo "成功刪除容器$SERVER_NAME,CID-$CID"
fi
if [ -n "$IID" ]; then
echo "存在鏡像$SERVER_NAME:$TAG,IID=$IID"
docker rmi $IID
echo "成功刪除鏡像$SERVER_NAME:$TAG,IID=$IID"
fi
echo "開(kāi)始構(gòu)建鏡像$SERVER_NAME:$TAG"
cd $SOURCE_PATH
docker build -t $SERVER_NAME:$TAG .
echo "成功構(gòu)建鏡像$SERVER_NAME:$TAG"
docker run --restart=always --name aurora-springboot-0.0.1.jar -d -p 8080:8080 aurora-springboot-0.0.1.jar:latest
echo "成功創(chuàng)建并運(yùn)行容器$SERVER_NAME"注意事項(xiàng):sh文件需要用notepad++轉(zhuǎn)為Unix格式**
具體操作:點(diǎn)開(kāi)notepad++中的編輯 ---> 文檔格式轉(zhuǎn)換 --->轉(zhuǎn)為Unix
3.cd到/usr/local/docker下面 ,執(zhí)行如下命令打包docker鏡像文件
sh aurora-start.sh
4.啟動(dòng)容器
docker run --name aurora-springboot-0.0.1.jar -d -p 8080:8080 aurora-springboot-0.0.1.jar:latest
這樣后端項(xiàng)目就可以在服務(wù)器上跑起來(lái)了
5.訪(fǎng)問(wèn)測(cè)試(瀏覽器上訪(fǎng)問(wèn))
ip:8080
補(bǔ):刪除重做(更新)鏡像
更新了項(xiàng)目,把原來(lái)部署的jar包刪除,容器鏡像都刪除,然后將新的jar放到 /home/docker 下,在運(yùn)行生成新鏡像
1、刪除原來(lái)的項(xiàng)目jar包的容器和鏡像
可以按照鏡像id刪除鏡像,命令如下:docker rmi 鏡像ID
刪除單個(gè)鏡像(-f 強(qiáng)制刪除):docker rmi -f 鏡像ID
1. 刪除指定的容器: docker rm 容器名稱(chēng)(容器ID) 例如:docker rm mycentos11 2. 刪除容器的時(shí)候,如果容器在運(yùn)行,會(huì)報(bào)錯(cuò),必須先停止容器 # 查看正在運(yùn)行的容器 docker ps # 刪除正在運(yùn)行的容器 docker rm mycentos11 # 停止容器 docker stop mycentos11 啟動(dòng)容器 docker start 容器名稱(chēng)(或者容器ID) 例如: docker start mycentos2 # 查看所有容器 docker ps -a
2、將jar包更新后,生成新鏡像
docker build -t blog:1.0 .
3、運(yùn)行鏡像
docker run --name blog -d -p 80:8080 blog:1.0
到此這篇關(guān)于Docker部署SpringBoot項(xiàng)目到云服務(wù)器的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)Docker部署SpringBoot到云服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 云服務(wù)器Jenkins部署Springboot項(xiàng)目及Vue項(xiàng)目的詳細(xì)過(guò)程
- IDEA如何一鍵部署SpringBoot項(xiàng)目到服務(wù)器
- SpringBoot項(xiàng)目部署到服務(wù)器的兩種方式
- Docker部署SpringBoot項(xiàng)目,本地運(yùn)行正常,部署至服務(wù)器報(bào)錯(cuò)zip file closed問(wèn)題
- 將SpringBoot項(xiàng)目無(wú)縫部署到Tomcat服務(wù)器的操作流程
- springboot項(xiàng)目如何部署到服務(wù)器
- Springboot項(xiàng)目的服務(wù)器部署與發(fā)布方式
相關(guān)文章
淺談React Native 傳參的幾種方式(小結(jié))
這篇文章主要介紹了淺談React Native 傳參的幾種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
如何使用Redux Toolkit簡(jiǎn)化Redux
這篇文章主要介紹了如何使用Redux Toolkit簡(jiǎn)化Redux,幫助大家更好的理解和學(xué)習(xí)使用React框架,感興趣的朋友可以了解下2021-04-04

