Docker部署SpringBoot项目

别等时光非礼了梦想. 提交于 2020-12-26 12:13:36

1.准备一个SpringBoot项目

 

 

2.安装Docker

Docker运行在CentOS 7上,要求操作系统为64位,内核版本为3.10及以上。
确认本机已经安装了满足要求的Linux内核。使用命令uname -r来检查内核版本信息。

[root@localhost ~]# uname -r
3.10.0-957.el7.x86_64

 

安装Docker

使用命令yum install -y docker安装Docker,“-y”表示不询问,使用默认配置进行安装。

 

 

 

启动Docker服务,并设置为开机自启动

#启动
systemctl start docker.service

#开启自启动 systemctl enable docker.service

#查看docker版本
docker version

 

 

 3.配置DockerFile文件

     新建文件夹并创建对应文件

cd /home

mkdir DockerDeploy

cd DockerDeploy

touch Dockerfile #插入如下内容


 

 

FROM java:8

VOLUME /tmp

ADD my-blog-4.0.0-SNAPSHOT.jar app.jar

RUN bash -c "touch /app.jar"

EXPOSE 8080

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

Remark:

FROM指令指定一个已经存在的镜像,告诉Docker后续的指令都是在这个基础上进行的。例如:FROM java:8表示使用 Jdk1.8 环境为基础镜像进行构建镜像。

VOLUME ,VOLUME 指向了一个/tmp的目录,由于Spring Boot使用内置的Tomcat容器,Tomcat 默认使用/tmp作为工作目录。这个命令的效果是:在宿主机的/var/lib/docker目录下创建一个临时文件并把它链接到容器中的/tmp目录

ADD ,拷贝文件并且重命名

ENTRYPOINT,为了缩短Tomcat 的启动时间,添加java.security.egd的系统属性指向/dev/urandom作为ENTRYPOINT

 

4.上传jar包(上传步骤一中准备好的jar包)

 

 5.构建镜像(镜像名需要小写)

Remark:第一次构建会耗时比较久

# 构建镜像
docker build -t blog .

 

6.检查镜像

docker images

 

7.构建容器并运行

 

docker run -d --name=myblog -p 8080:8080 blog

#查看容器
docker ps

#查看日志
docker logs -f id

 

 

 

解释说明

 

run: 容器启动命令

 

--name boot-docker 自定义容器命名

 

-d 程序后台启动

 

-v /opt/jar/boot-docker/logs:/log 应用日志 数据卷的方式存储

 

-p 8000:8000 用主机8000端口映射容器端口

 

boot-docker 镜像名称

 

 

8.访问检测正常

 

 9.打tag,推送到私人仓库,下次直接拉取使用

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!