1.使用Idea中Docker插件一鍵部署docker項(xiàng)目
2.使用Idea中Alibaba Cloud Toolkit插件一鍵部署docker項(xiàng)目
使用感受:使用docker插件掀宋,配置比較麻煩一點(diǎn)典予,在測(cè)試階段服務(wù)器上的內(nèi)存和cpu會(huì)突然變高,不知道什么原因食磕,還有docker會(huì)突然奔潰了,然后我又重裝系統(tǒng)
使用alibaba的插件配置比較簡(jiǎn)單恨樟,使用方便耻警,需要配置Dockerfile和啟動(dòng)腳本使用
1.安裝Alibaba Cloud Toolkit插件,重啟idea
image.png
2.打開(kāi)插件控制臺(tái)
image.png
image.png
3.輸入服務(wù)器的賬號(hào)密碼
image.png
4.配置
image.png
5.配置詳情
image.png
6.服務(wù)器上創(chuàng)建相應(yīng)的文件夾和Dockerfile文件和啟動(dòng)start.sh腳本
image.png
Dockerfile內(nèi)容
FROM openjdk:8-jdk-alpine
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
VOLUME /tmp
ADD springboot_docker_demo-0.0.1.jar springboot_docker_demo-0.0.1.jar
EXPOSE 8080
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/springboot_docker_demo-0.0.1.jar"]
start.sh腳本內(nèi)容
# 配置鏡像名稱(chēng)s
img=springboot_docker_demo-0.0.1
# 配置鏡像標(biāo)簽(版本)
tag=1.0
# 配置容器名稱(chēng)
container=springboot_docker_demo-0.0.1
# 判斷容器是否存在涂屁,存在則刪除书在。
if sudo docker ps -a --filter name=^/$container$ | grep -i "$container"; then
echo "容器: $container 存在,刪除容器."
sudo docker stop "$container"
sudo docker rm -f "$container"
else
echo "容器: $container 不存在"
fi
# 判斷鏡像是否存在拆又,如存在則刪除
if sudo docker images --filter=reference="$img:$tag" | grep -i "$img"; then
echo "鏡像: $img:$tag 鏡像存在, 刪除鏡像重新構(gòu)建."
sudo docker rmi $img:$tag
fi
# 構(gòu)建新鏡像
echo "構(gòu)建springboot_docker_demo-0.0.1新鏡像."
sudo docker build -t $img:$tag .
# 啟動(dòng)服務(wù)儒旬,掛載外部數(shù)據(jù)信息
echo "啟動(dòng)springboot_docker_demo-0.0.1容器服務(wù)!"
sudo docker run -d -p 8088:8080 --restart=always --name $container $img:$tag
# 檢測(cè)服務(wù)是否啟動(dòng)成功
if sudo docker ps --filter name=^/$container$ | grep -i "up"; then
echo "springboot_docker_demo-0.0.1服務(wù)啟動(dòng)成功Pass"
else
echo "springboot_docker_demo-0.0.1服務(wù)啟動(dòng)失敗Fail"
fi
7.運(yùn)行一鍵部署
image.png
先打包
image.png
開(kāi)始部署
image.png
8.訪(fǎng)問(wèn)成功
image.png
附demo gitee地址
https://gitee.com/livieyifeng/springboot_docker_demo.git