SpringBoot 使用Docker容器启动
1.制作一个Java8的容器
下载一个网易蜂巢�的centos容器
docker pull hub.c.163.com/library/centos:latest
更改容器名字
tag containId centos:7
运行容器
docker run -i -t -v /Users/enniu1/Desktop/docker-data/software:/mnt/software centos:7
- -i:以"交互模式"运行容器
- -t:表示容器启动后会进入其命令行
- -v:数据卷,这里将宿主机的~/Desktop/docker-data/software目录(宿主机存放软件目录)挂载到容器的/mnt/software目录(容器存放软件目录)
下载jdk8并放在~/Desktop/docker-data/software文件夹下
在容器中解压JDK8压缩包
cd /opt
tar -zxf /mnt/software/jdk-8u102-linux-x64.tar.gz -C .
在容器中设置Java环境变量
# 配置环境变量
vi ~/.bashrc
export JAVA_HOME=/opt/jdk
export PATH=$PATH:$JAVA_HOME/bin
# 退出并保存文件
. ~/.bashrc
创建自己的容器
# 86e6187ea166为容器id
docker commit 86e6187ea166 -m"install jdk8 to centos7" hbb/jdk8:v1.0
2.制作项目容器
将spring-boot-docker项目打成jar包 并把jar包移动到dockerfile相同的目录下,我这里打成的jar包名字为spring-boot-docker-0.0.1-SNAPSHOT.jar, 并移动到了~/Desktop/docker-data/file文件夹下。
编写Dockerfile
# 使用的镜像
FROM hbh/boot:v1.0
VOLUME /tmp
# 设置环境
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/
# 启动时执行命令
ENTRYPOINT ["java", "-jar", "/opt/jar/spring-boot-docker-0.0.1-SNAPSHOT.jar"]
将dockerfile文件也移动到~/Desktop/docker-data/file文件夹下。
创建项目容器
docker build -t="hbh/spring-boot-docker:v1.1" ~/Desktop/docker-data/file
运行测试
运行docker镜像
# 4a0fdacdf5e8为镜像id
docker run -d -p 8990:8088 4a0fdacdf5e8
浏览器访问localhost:8990,出现hello表示启动成功。
项目地址:https://github.com/huangbuhuan/springboot