Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等)

这篇具有很好参考价值的文章主要介绍了Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

大家好!我是夏小花,今天是2023年10月29日|农历九月十五,转眼间,马上进入到十一月份,最近这段时间一直在项目上没有更新文章,话不多说,今天这篇博文主要是简单了解一下docker、dockerfile的使用、docker部署spring-boot项目以及一些docker常用的指令,本篇文章中如果有不足的地方,欢迎大家多多指点,评论和私信都可以,谢谢!

Docker

Docker的定义

Docker是一个基于轻量级虚拟化技术的容器,整个项目基于Go语言开发,并采用了Apache 2.0协议。
Docker 其中包括 镜像、容器、仓库。

Docker有哪些作用

开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
使用docker部署一套代码可以在各个环境中使用,将应用环境和底层环境实现了解耦。
快速部署:Docker通过创建进程的容器,不必重新启动操作系统,几秒内能关闭,你可以在数据中心创建或销毁资源,不用担心额外消耗。

Docker有哪些好处

解决运行环境不一致所导致的问题,这样就不会产生“本地运行没问题,可一到服务器上就不行了”的情况。

使用docker部署springboot项目

安装docker

安装这块大家可以去网上查阅一下资料
顺便把Docker Compose也安装一下
Docker Compose是一个用来定义和运行复杂应用的Docker工具。

创建Dockerfile镜像文件

可以看下下面这个Dockerfile文件,我先来说下各个指令都代表什么意思:
FROM:指定基础镜像,必须为第一个命令(尽量不要定义的偏差太大)
ADD:将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget。
ENTRYPOINT:配置容器,使其可执行化。
EXPOSE:指定于外界交互的端口。
VOLUME:用于指定持久化目录。

FROM openjdk:8
# 这个地方我填写的是后端jar包所在的目录位置
VOLUME /xxx/xxx
# 这个地方我填写的是后端jar包名称,例如你的jar包名字叫aa.jar  这个地方就填aa.jar aa.jar(填两遍)
ADD xxx.jar xxx.jar
# 后端项目的端口号
EXPOSE xxx
# 前面都一样,只需要把后面的换成你的jar名称
ENTRYPOINT ["java", "-jar", "/xxx.jar"]

首先进入到项目目录下:
Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等),docker,Java,docker,容器,java,spring boot
可以看到现在我这个目录下已经创建好了Dockerfile文件,把我上面的文件内容复制一下,按照上面的提示改一下就可以。

执行镜像文件(Dockerfile文件)

现在我的后端是处于停止状态,没有启动jar包
Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等),docker,Java,docker,容器,java,spring boot
输入下面的指令:
xxx的那方我是填的当前目录名称(xjzdp)

docker build -t xxx:1.0 .

查看Docker镜像

输入下面的指令:
REPOSITORY:镜像名称
TAG:版本
IMAGE ID:镜像id
如果你执行完这个命令后可以看到镜像名称的就证明成功了,继续往下走!

docker images

Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等),docker,Java,docker,容器,java,spring boot

启动容器

输入下面的指令:
根据我下面的例子,修改对应的信息即可

sudo docker run -d -p 后端端口号:后端端口号 --name 镜像名称 镜像名称:版本号

例如

sudo docker run -d -p xxx:xxx --name xxx xxx:v1.0

输入完上面的指令后,如果显示的一串英文+中文字符串,表示启动成功!
Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等),docker,Java,docker,容器,java,spring boot

查看Docker中运行的容器

输入下面的指令:

docker ps

输入完上面的指令后,如果显示向我下面的截图一样,表示启动成功!
NAMES:显示的是镜像端口。
还有端口号、jar包名称等其它信息。
Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等),docker,Java,docker,容器,java,spring boot

查看服务容器日志

输入下面的指令:

docker logs -f 这个地方填写你的镜像名称

例如:

docker logs -f xxx

从日志中查看你的项目是否启动成功,可以测试一下能不到访问到项目。

以上就是如何使用docker部署spring-boot项目如果有对以上步骤不明白的或者是遇到其它问题的博主可以私信我或者这本篇博文下评论都可以,我会一一为你解答,不收取任何费用,欢迎打扰哦!

Docker常用指令

查看docker安装目录

sudo docker info | grep -i root

启动Docker

systemctl start docker

停止Docker

systemctl stop docker

重启Docker

systemctl restart docker

查看Docker

systemctl status docker

设置开机自启

systemctl enable docker

启动已停止运行的容器

docker start 容器ID或者容器名

重启容器

docker restart 容器ID或者容器名

停止容器

docker stop 容器ID或者容器名

强制停止容器

docker kill 容器ID或容器名

删除已停止的容器

#删除一个
docker rm 容器ID  
docker rm -f 容器ID  #强制删除
 
 
#删除多个
docker rm -f $(docker ps -a -q)
或
docker ps -a -q | xargs docker rm

查看服务容器日志

docker logs -f 填写你的镜像名称

删除当前真正启动的容器

-f 后面跟容器名称或者容器id都可以

docker rm 填写你的镜像名称

查看docker镜像

docker images

查看运行中的docker容器

docker ps

启动docker容器

sudo docker run -d -p 后端端口号:后端端口号 --name 镜像名称 镜像名称:版本号

通过Dockerfile构建镜像

docker build -t 镜像名称:版本号 .

总结

Docker 部署spring-boot项目我这边理解的大致就这么多了,后期本博主会更新更多前沿技术点及项目中遇到的一些问题,如果大家有技术难题或者有要探讨的技术点可以私信本博主哦!文章来源地址https://www.toymoban.com/news/detail-719341.html

到了这里,关于Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker部署spring boot项目

    在docker部署时首先要保证一般部署能够访问。 目前主流的java框架为spring,软件包为jar包,只需以jar为基础构建容器环境。打包为jar后只需要jvm就可以运行,因此需要以jdk为镜像构建容器。 基于命令构建jdk环境 拉取openjdk镜像: docker pull openjdk:8 上传web文件,启动容器和web服务

    2024年02月03日
    浏览(39)
  • spring-boot项目启动类错误: 找不到或无法加载主类 com.**Application

    问题:Springboot项目启动报错:错误: 找不到或无法加载主类 com.**Application 解决步骤: 1.File–Project Structure 2.Modules–选中你的项目–点击“-”移除 3.重新导入:点击“+”号,选择Import Module,找到项目所在路径,选中要导入的项目,点击OK。 选择maven,点击ok 4.重新编译:点击

    2024年04月17日
    浏览(59)
  • IDEA快速部署Spring Boot 项目到Docker

    我们通常使用TCP的方式连接Docker,所以我们需要配置Docker并开放端口,如果是本地虚拟机,可以简单使用http的方式进行连接(不建议),如果你是远程服务器,请 务必采用安全的连接方式(https) ; 自己的虚拟机 如果是自己的虚拟机,可以不需要创建CA证书。可以使用 http://ip:端

    2023年04月10日
    浏览(44)
  • Docker 部署 Spring Boot 项目(含 MySQL + Redis )

    注意事项:如果需要将 Spring Boot 项目的日志文件挂载到本地,则在打包前需要先在 yml 进行如下配置: 这里的 info 指的是日志等级,可以根据需要进行修改,日志等级主要有以下几种: trace :最低的日志级别,用于记录非常详细的信息,通常仅在诊断问题时使用。 debug :用

    2024年01月21日
    浏览(45)
  • 【初识 Docker | 中级篇】 Docker 中部署 Spring Boot 微服务详解

    本文将为您详细介绍如何在Docker容器中部署Spring Boot服务。 首先,您需要为您的Spring Boot应用程序创建一个 Docker镜像 。然后将镜像在Docker容器中运行起来即可 提示:以下是本篇文章正文内容,下面案例可供参考 这个Dockerfile文件使用alpine Linux操作系统和OpenJDK 8图像作为基础映

    2024年02月16日
    浏览(47)
  • Docker和Kubernetes部署Spring Boot项目:如何灵活修改配置文件?

      大家好,我是G探险者,今天我们来聊一下通过容器化部署的springboot项目,如何灵活的修改配置文件。 有同事问我,我们的springboot项目是容器化部署,使用的是K8S容器编排平台,部署上去后,修改项目里面的配置不太方便,还需要进入到容器内部进行修改,太麻烦了,怎么

    2024年02月10日
    浏览(43)
  • 一文看懂 win 10安装docker并部署spring boot项目

    目录 1、下载docker安装包 2、win 10环境准备 3、安装Docker Desktop 4、验证Docker安装 5、部署spring boot项目  5.1、pom.xml中添加docker依赖 5.2、添加Dockerfile文件 5.3、镜像文件 5.4、验证 Docker Desktop是Docker在win 10操作系统上的安装方式,首先到Docker Desktop官网下载安装包,安装地址Instal

    2024年02月07日
    浏览(55)
  • Jenkins + Docker 一键自动化部署 Spring Boot 项目,步骤齐全,少走坑路!

    本文章实现最简单全面的Jenkins+docker+springboot 一键自动部署项目,步骤齐全,少走坑路。 环境 :centos7+git(gitee) 简述实现步骤:在docker安装jenkins,配置jenkins基本信息,利用Dockerfile和shell脚本实现项目自动拉取打包并运行。 推荐一个开源免费的 Spring Boot 实战项目: https://git

    2024年02月08日
    浏览(68)
  • 基于 Docker 的 Spring Boot 项目部署演示,其中使用了 Redis、MySQL 和 RabbitMQ 中间件

    这是一个基于 Docker 的 Spring Boot 项目部署演示,其中使用了 Redis、MySQL 和 RabbitMQ 中间件。 拉取 MySQL 镜像: 创建 MySQL 容器: 将 密码 、 数据库名 、 用户名 和 密码 替换为您自己的值。 拉取 Redis 镜像: 创建 Redis 容器: 拉取 RabbitMQ 镜像: 创建 RabbitMQ 容器: 构建和运行

    2024年02月06日
    浏览(58)
  • spring-boot定时任务

    定时任务规则:0  *  *  * ? *  * 表示任意月的任意周的每天的每时的每分的0秒开始一次任务。 任务加在方法上  开始一次任务 表示 启动 一次方法。 0/5 *  *  5  *  4  表示 每月的最后一周的第五天的任意时任意分的0秒开始 每隔5秒启动一次任务。 定时任务表达式 还有很

    2024年01月21日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包