SpringBoot 使用Docker容器啟動(dòng)
1.制作一個(gè)Java8的容器
下載一個(gè)網(wǎng)易蜂巢?的centos容器
docker pull hub.c.163.com/library/centos:latest
更改容器名字
tag containId centos:7
運(yùn)行容器
docker run -i -t -v /Users/enniu1/Desktop/docker-data/software:/mnt/software centos:7
- -i:以"交互模式"運(yùn)行容器
- -t:表示容器啟動(dòng)后會(huì)進(jìn)入其命令行
- -v:數(shù)據(jù)卷,這里將宿主機(jī)的~/Desktop/docker-data/software目錄(宿主機(jī)存放軟件目錄)掛載到容器的/mnt/software目錄(容器存放軟件目錄)
下載jdk8并放在~/Desktop/docker-data/software文件夾下
在容器中解壓JDK8壓縮包
cd /opt
tar -zxf /mnt/software/jdk-8u102-linux-x64.tar.gz -C .
在容器中設(shè)置Java環(huán)境變量
# 配置環(huán)境變量
vi ~/.bashrc
export JAVA_HOME=/opt/jdk
export PATH=$PATH:$JAVA_HOME/bin
# 退出并保存文件
. ~/.bashrc
創(chuàng)建自己的容器
# 86e6187ea166為容器id
docker commit 86e6187ea166 -m"install jdk8 to centos7" hbb/jdk8:v1.0
2.制作項(xiàng)目容器
將spring-boot-docker項(xiàng)目打成jar包 并把jar包移動(dòng)到dockerfile相同的目錄下爪喘,我這里打成的jar包名字為spring-boot-docker-0.0.1-SNAPSHOT.jar, 并移動(dòng)到了~/Desktop/docker-data/file文件夾下泻拦。
編寫Dockerfile
# 使用的鏡像
FROM hbh/boot:v1.0
VOLUME /tmp
# 設(shè)置環(huán)境
ENV JAVA_HOME /opt/jdk
ENV PATH $PATH:$JAVA_HOME/bin
# 將jar包放到容器的/opt/jar文件夾下
ADD spring-boot-docker-0.0.1-SNAPSHOT.jar /opt/jar/
# 啟動(dòng)時(shí)執(zhí)行命令
ENTRYPOINT ["java", "-jar", "/opt/jar/spring-boot-docker-0.0.1-SNAPSHOT.jar"]
將dockerfile文件也移動(dòng)到~/Desktop/docker-data/file文件夾下几晤。
創(chuàng)建項(xiàng)目容器
docker build -t="hbh/spring-boot-docker:v1.1" ~/Desktop/docker-data/file
運(yùn)行測(cè)試
運(yùn)行docker鏡像
# 4a0fdacdf5e8為鏡像id
docker run -d -p 8990:8088 4a0fdacdf5e8
瀏覽器訪問localhost:8990秕脓,出現(xiàn)hello表示啟動(dòng)成功。
項(xiàng)目地址:https://github.com/huangbuhuan/springboot