将springboot项目部署到docker中

一、环境准备

  1. 准备一个简单空的springboot项目
  2. 准备一台有网络的linux服务器,并且已经部署docker

二、部署docker

        1.直接参考菜鸟教程的docker安装教程

CentOS Docker 安装 | 菜鸟教程

         2.docker拉取java 8镜像

启动springboot需要jdk的支持,所以直接拉取java8镜像即可

docker pull java:8

 第一次拉取java8镜像时,错误 net/http: TLS handshake timeout

问题原因 :该命令默认从docker远端镜像仓库中拉取镜像,但由于远端仓库的服务器是在国外,我们国内有的用户很可能都访问不了

解决:通过配置/etc/docker/daemon.json为国内的加速引擎可以解决这个问题。

但是又遇到了找不到daemon.json文件的问题

可参考文章Docker 找不到etcdockerdaemon.json问题解决_m0_67401835的博客-CSDN博客_docker 没有daemon.json

具体操作为先跳转到对应目录下

 cd /etc/docker

 新建编辑daemon.json

vim daemon.json

 在文件中保存如下配置

{
  "registry-mirrors": ["https://drcy3veo.mirror.aliyuncs.com"]
}


然后重启docker

sudo systemctl restart docker

这里可以检查一下配置的镜像是否生效:

docker info

如果显示的配置信息的末尾部分出现如下字样,说明配置完成:

三、部署项目

  1. 编写Dockerfile文件(在jar包同级目录下编辑)

FROM java:8  
MAINTAINER DuZhuo
ADD ./dockerpackagedemo-0.0.1-SNAPSHOT.jar  dockerTest.jar 
CMD java -jar dockerTest.jar 

配置解析:

FROM java:8  :定义父镜像,即jdk8
MAINTAINER DuZhuo:定义作者信息
ADD ./dockerpackagedemo-0.0.1-SNAPSHOT.jar  dockerTest.jar :将项目包jar包加入并且重命名
CMD java -jar dockerTest.jar   定义容器启动执行的命令

        2. Dockerfile构建镜像

目录依然需要在jar包那个目录下执行

docker build -f ./Dockerfile -t dockertest .

-f  ./Dockerfile       指目录下的Dockerfile文件

-t dockertest         构建镜像的名称

注意最后的  '.'  

这个'.' 代表当前路径,不添加会有报错 :“docker build” requires exactly 1 argument

详情可参考Docker使用遇到问题:"docker build" requires exactly 1 argument(s)._CC丶Z的博客-CSDN博客

        3.查看镜像

docker images

        查看是否创建成功

        4.创建容器

 docker run -id  --name dockertest -p 8082:8082 dockertest

    前一个dockertest是命名运行容器名称, 后一个dockertest 是镜像名称

       5.查看正在运行的容器

docker ps

        6.关闭服务

docker stop dockertest
docker start dockertest
docker restart dockertest

依次是关闭服务,起服务,重启服务 

        7.版本迭代

先把jar包替换掉,然后重复2-5的操作,实现重建镜像,再重建容器的步骤

  • 3
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!对于使用Spring Boot部署到Linux上的Docker环境,您可以按照以下步骤进行操作: 1. 首先,确保您已经在Linux服务器上安装了Docker,并且Docker服务已经启动。 2. 将您的Spring Boot项目打包成一个可执行的JAR文件。您可以使用Maven或者Gradle来完成这个步骤。 3. 创建一个Dockerfile,用于构建Docker镜像。在项目根目录下创建一个名为`Dockerfile`的文件,并添加以下内容: ``` FROM adoptopenjdk:11-jre-hotspot WORKDIR /app COPY target/your-project.jar app.jar EXPOSE 8080 ENTRYPOINT ["java", "-jar", "app.jar"] ``` 这个Dockerfile使用了AdoptOpenJDK提供的Java 11运行时环境,并将可执行的JAR文件复制到容器的`/app`目录下。 4. 使用Docker命令构建镜像。在项目根目录下执行以下命令: ``` docker build -t your-image-name . ``` 这个命令会根据Dockerfile构建一个名为`your-image-name`的镜像。注意命令最后的`.`表示Dockerfile所在的当前目录。 5. 运行Docker容器。执行以下命令: ``` docker run -d -p 8080:8080 your-image-name ``` 这个命令会在后台运行一个名为`your-image-name`的容器,并将容器的8080端口映射到宿主机的8080端口上。 现在,您的Spring Boot项目已经通过Docker部署在Linux上了。您可以通过访问服务器的IP地址加上端口号来访问您的应用程序,例如:`http://your-server-ip:8080`。 希望对您有所帮助!如有任何问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值