SpringBoot项目docker部署教程【内设构建脚本及DockerFile】

本文详细介绍了如何使用Maven打包项目,包括操作步骤和在Centos7环境中部署Docker容器,涉及Dockerfile编写、运行脚本、端口映射及防火墙设置。
摘要由CSDN通过智能技术生成

一、使用maven打包【package】

1.在maven里找到package双击就可以了。   so eazy

2.在你的项目文件夹右键,选择打开于 Explorer,就会打开你项目所在的资源管理器。 so eazy

3.在资源管理器中进入项目目录,找到target目录,进入,就能看到你对应打好的jar包了。so eazy

二、服务器准备工作

1.上传jar包到服务器

        我这目前没有富裕的服务器了,搭了个虚拟机模拟服务器环境,我用的是Centos7.

2.创建DockerFile

        在你上传的jar包目录下创建一个文件,命名为Dockerfile。内容如下,按照自己的需求替换端口,以及你对应的jar包名称。

#jdk版本
FROM adoptopenjdk/openjdk8-openj9:alpine-slim

RUN mkdir -p /java_project

WORKDIR /java_project
COPY yourjarname.jar ./yourjarname.jar

#指定端口
CMD ["--server.port=9544"]


ENV TZ=Asia/Shanghai
#时区配置
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN apk add --update font-adobe-100dpi ttf-dejavu fontconfig

EXPOSE 9544

ENTRYPOINT ["java", "-jar", "yourjarname.jar","--spring.profiles.active=prod"]

3.创建运行脚本

        如果你迭代更新部署的动作不多的话,没必要写脚本,直接docker build就可以,我这边是这种需求比较多,我又很懒,所以简单写一个,每次运行就可以了,基本内容如下:

# 定义镜像相关配置
image_name='your_image_name'
image_tag='1.3'
line_tag='your_image_name-1.3'
dockerfile_path='./Dockerfile'

# 使用 Dockerfile 构建镜像
docker build -t ${image_name}:${image_tag} -f ${dockerfile_path} .
if [ $? != 0 ];then
  echo "Build image failed"
  exit 1
fi

保存以后,记得给自己的脚本执行权限,比如我的执行文件名字是start.sh。

chmod -R 777 startsh

4.运行脚本

./start.sh

等待构建完成即可,完成后输出如下:

而后通过docker images 命令就可以看到构建后镜像信息。

5.运行镜像

使用docker run 命令运行镜像即可。so eazy

docker run -d -p 9544:9544 --name con_name -v /data/version:/data/version -v /opt/upFiles:/opt/upFiles image_name:1.3

而后呢,有几点需要注意,

1.服务需要的端口已经要映射好 -p,

2.需要挂载的目录也要挂载好 -v,否则后续想获取容器内的文件十分麻烦,

3.docker运行以后如果发现无法访问,优先检查服务器防火墙、安全组的对应端口是否开启

#防火墙相关命令
查看想开的端口是否已开:firewall-cmd --query-port=6379/tcp
添加指定需要开放的端口:firewall-cmd --add-port=6379/tcp --permanent
重载入添加的端口:firewall-cmd --reload
查询指定端口是否开启成功:firewall-cmd --query-port=6379/tcp
移除指定端口:firewall-cmd --permanent --remove-port=6379/tcp

最后,想要向开发时候一样看到控制台输出,可以使用portainer。官方给出了镜像,pull下来以后直接运行即可,步骤参考:

1.下载镜像
docker pull portainer/portainer

2.运行
docker run -d -p 8000:8000 -p 9000:9000 --name portainer   --restart=always   -v /var/run/docker.sock:/var/run/docker.sock   -v /var/run/portainer_data:/data portainer/portainer

3.访问
yourIp:9000/

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值