Centos8.3、docker部署springboot项目实战案例分析

 更新时间:2021年06月28日 09:47:04   作者:时光城主  
这篇文章主要介绍了Centos8.3、docker部署springboot项目实战记录,包括docker安装,开启docker远程访问端口的方法及配置idea docker环境的方法,需要的朋友可以参考下

引言

目前k8s很是火热,我也特意买了本书去学习了一下,但是k8s动辄都是成百上千的服务器运维,对只有几台服务器的应用来说使用k8s就有点像大炮打蚊子。只有几台服务器的应用运维使用传统的tomcat部署很繁琐,效率不高,动辄十几分钟部署一台服务,使用jenkins部署又太过复杂,斟酌许久我还是选择了使用docker+dockerFile的方式部署。这种方式部署简单高效。

docker安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun #一键安装脚本
systemctl enable docker.service                                    #设置docker开机启动
systemctl restart docker.service                                   #启动docker服务

开启docker远程访问端口

编辑/usr/lib/systemd/system/docker.service文件添加-Htcp://0.0.0.0:12375 -H unix://var/run/docker.sock 如下图:

保存文件后重新加载配置然后重新启动

systemctl daemon-reload           # 重新加载配置
    systemctl restart docker.service  # 重启docker服务

注意:-Htcp://0.0.0.0:12375 这句话的意思任意ip都可以使用tcp访问这个端口可以根据实际情况匹配IP。因为这里没有token或者密钥所以要特别注意如果使用云服务器那么强烈建议这里设置为安全组IP白名单访问。我当初在测试环境使用docker发布三四个小时就被人攻击了不过当初我是用的2375端口,这个端口特别容易被攻击。

配置IDEAdocker环境

idea安装docker环境插件如下图:

安装完成后重启idea然后打开springboot项目,在根目录创建Dockerfile文件。如下图:

编辑Dockerfile如下:

FROM openjdk:11
# 镜像是从 openjdk:11-jdk-alpin 继承而来的
 
VOLUME /root/tmp
# 表示挂载了 /root/tmp 目录到容器中
 
ADD build/libs/brief-plus-0.0.1-SNAPSHOT.jar apprun.jar
# 将bootJar 添加到镜像中根目录下 命令为 apprun.jar
 
ENTRYPOINT ["java","-jar","/apprun.jar"]
# ENTRYPOINT 在容器启动后执行 java 命令来运行程序
 
# 设置容器时间
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# ======= 其它的一些Dockerfile命令 ========== 这里我们没有用到不过还是提一下
#COPY package.json /usr/src/app/
#ADD 更高级的复制文件
#ADD 指令和 COPY 的格式和性质基本一致。但是在 COPY 基础上增加了一些功能。
#CMD 指令就是用于指定默认的容器主进程的启动命令的。
#ENV 设置环境变量
#HEALTHCHECK 健康检查
#EXPOSE 指令是声明运行时容器提供服务端口,这只是一个声明,在运行时并不会因为这个声明应用就会开启这个端口的服务
EXPOSE 8090

主要注意build/libs/brief-plus-0.0.1-SNAPSHOT.jar apprun.jar 这句话。 我是用的gradle编译后的文件位于build/libs/ 目录下 如下图:

maven编译后的文件位于target目录下如下图:

Dockerfile是根据具体的目录和打包后的名称来获取生成镜像文件所以这里一定不能出错。

配置Docker服务

配置运行环境

创建一个tcp连接服务

3.配置发布到docker的服务

绑定端口ip的详细配置

打包发布

心得建议

1.docker的镜像文件会分块,每块都有自己的签名,每次上传会进行对比差异的文件才会重新上传。

2.每次上传的时候记得更改标签方便根据标签进行回滚。

3.修改服务器的网络配置、防火墙需要重启docker服务。

docker 常用命令:

重启docker

systemctl restart docker      # 重启docker服务
systemctl daemon-reload    # 重新加载docker配置

查看30分钟内的日志

docker logs --since 30m id

以上就是Centos8.3、docker部署springboot项目实战记录的详细内容,更多关于docker部署springboot项目的资料请关注脚本之家其它相关文章!

相关文章

  • Docker 清理环境操作

    Docker 清理环境操作

    这篇文章主要介绍了Docker 清理环境操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • docker实现将本地文件复制到docker容器内

    docker实现将本地文件复制到docker容器内

    这篇文章主要介绍了docker实现将本地文件复制到docker容器内方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • docker 容器自定义 hosts 网络访问操作

    docker 容器自定义 hosts 网络访问操作

    这篇文章主要介绍了docker 容器自定义 hosts 网络访问操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Linux搭建Docker环境的详细过程(最新推荐)

    Linux搭建Docker环境的详细过程(最新推荐)

    Docker从17.03版本之后分为CE(Community Edition: 社区版)和EE(Enterprise Edition: 企业版),相对于社区版本,企业版本强调安全性,但需付费使用,这里我们使用社区版本即可,这篇文章给大家介绍Linux搭建Docker环境的详细过程,感兴趣的朋友一起看看吧
    2025-04-04
  • 安装Docker Desktop报错WSL 2 installation is incomplete的问题(解决报错)

    安装Docker Desktop报错WSL 2 installation is incomplete的问题(解决报错)

    这篇文章主要介绍了安装Docker Desktop报错WSL 2 installation is incomplete的问题,解决方法很简单只需我们自己手动更新一下,我们根据提示去微软官网下载最新版的wsl2安装后即可正常打开,需要的朋友可以参考下
    2021-06-06
  • Docker容器数据卷的使用教程

    Docker容器数据卷的使用教程

    数据卷容器是一个专门用来挂载数据卷的容器,该容器主要是供其他容器引用和使用,下面这篇文章主要给大家介绍了关于Docker容器数据卷使用的相关资料,需要的朋友可以参考下
    2022-10-10
  • 详解在Ubuntu 14.04安装和使用Docker

    详解在Ubuntu 14.04安装和使用Docker

    Docker是一个开源软件,它可以把一个Linux应用和它所依赖的一切(比如配置文件)都封装到一个容器。本篇文章主要介绍了在Ubuntu 14.04安装和使用Docker,非常具有实用价值,需要的朋友可以参考下。
    2016-12-12
  • Docker部署Tomcat及Web应用的实现

    Docker部署Tomcat及Web应用的实现

    这篇文章主要介绍了Docker部署Tomcat及Web应用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Docker容器跨主机通信中直接路由方式详解

    Docker容器跨主机通信中直接路由方式详解

    在本篇文章里我们给各位整理的是一篇关于Docker容器跨主机通信中直接路由方式详解内容,有需要的朋友们可以参考下。
    2019-10-10
  • Docker数据卷和容器编排的使用

    Docker数据卷和容器编排的使用

    这篇文章主要介绍了Docker数据卷和容器编排的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07

最新评论