一步一步使用Docker部署spring-boot项目

使用 Docker 部署 Spring Boot 金三银四到了,送上一个小福利!《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!容对你有帮助,可以扫码获取!!(备注Java获取)**金三银四到了,送上一个小福利![外链图片转存中…(img-kNPI5w5F-1711885493760)][外链图片转存中…(img-rUGcOCWt-1711885493761)][外链图片转存中…(img-MnnyVOYh-1711885493761)] 阅读详情

准备工作

  1. 安装Docker,网上很多教程可以参考一下Docker安装教程

  2. SpringBoot项目,参考教程

开搞开搞


  1. 在项目目录创建Dockerfile文件:
FROM frolvlad/alpine-oraclejdk8:slim
VOLUME /tmp
ADD security-0.0.1-SNAPSHOT.jar app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
  1. Pom文件中添加docker支持
<properties>
   <docker.image.prefix>security</docker.image.prefix>
</properties>
<build>
    <plugins>
        <plugin>
            <groupId>com.spotify</groupId>
            <artifactId>docker-maven-plugin</artifactId>
            <version>0.4.11</version>
            <configuration>
                <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
                <dockerDirectory>src/main</dockerDirectory>
                <resources>
                    <resource>
                        <targetPath>/</targetPath>
                        <directory>${project.build.directory}</directory>
                        <include>${project.build.finalName}.jar</include>
                    </resource>
                </resources>
            </configuration>
        </plugin>
    </plugins>
</build>
  1. 创建docker镜像
    项目根目录下执行命令
shenjiangangdeMacBook-Pro:security shenjg$ mvn package -Dmaven.test.skip=true docker:build

打包成功后可以看到

Successfully built ee0de0d073c8
Successfully tagged security/security:latest
[INFO] Built security/security
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 21.123 s
[INFO] Finished at: 2018-09-17T17:29:00+08:00
[INFO] Final Memory: 36M/542M
[INFO] ------------------------------------------------------------------------
  1. 运行docker容器
shenjiangangdeMacBook-Pro:blog shenjg$ docker run --name=docker-demo -p 8080:8080 -t security/security

没有问题的话就可以看到springboot项目的启动过程,启动完成后使用浏览器访问

localhost:8080

整个打包部署的流程告一段落,接下来可以查看一下容器的运行状态

查看容器的运行情况

shenjiangangdeMacBook-Pro:security shenjg$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
b1525df1db15        security/security   "sh -c 'java $JAVA_O…"   6 minutes ago       Up 6 minutes        0.0.0.0:8080->8080/tcp   docker-demo

docker容器的基本操作(启动/关闭/重启/删除)

docker start/stop/restart/rm CONTAINER ID /NAMES 

其中:
CONTAINER ID : 是容器id,执行 docker ps 可查看 eg:b1525df1db15
NAMES: 是容器的名称,也就是docker run –name后面的名字 eg:docker-demo

项目源码:https://github.com/tinet-shenjg/security

Docker部署Spring Boot项目 该命令将启动一个名为my-spring-boot-app的Docker容器,并将容器内部的8080端口映射到主机的8080端口。该命令将启动一个名为my-image的Docker容器,并将容器内部的8080端口映射到主机的8080端口。该命令将使用当前目录下的Dockerfile来构建一个名为my-spring-boot-app的Docker镜像。在构建完Docker镜像后,可以使用docker run命令来运行Docker容器。安装完成后,可以使用Docker来构建、部署和运行应用程序。 阅读详情

相关推荐

docker部署springboot多模块项目

docker部署springboot多模块项目

SpringBoot 多模块项目打包部署保姆级教程

SpringBoot 多模块项目打包部署教程! SpringBoot 多模块项目打包部署教程! 首先,使用docker安装环境配置(jdk安装不再展示)。 此次部署使用到的技术栈有redis以及mysql,技术不多,但也够吃一桌。 1、环境准备 # 1.安装docker # 2.docker使用测试 # 3.使用docker安装Mysql # 4.使用docker安装redis 1-1、安装docker(Vm或服务器) #1.需要的安装包 yum install -y yum-utils #2.设置 阿里

木字楠的博客 9067

docker-testopia:docker bugzilla+testopia 容器

docker-bugzilla 使用 Docker 配置正在运行的 Bugzilla + Testopia 系统 特征: 运行 Ubuntu 14.04 Nginx 而不是 apache(虽然目前只有一个工人) 批量提供bugzilla/testopia的配置(作为附加数据),因此更改数据库连接参数后无需重建图像 mysql 如何构建 如果您需要为自己构建基础镜像,只需切换到包含检出文件的目录并运行以下命令: $ docker build -rm -t < my> /docker-testopia . -rm开关会在创建映像时自动删除任何临时容器。 如何开始 准备数据库(如果你想为 mysql 服务器使用 docker 容器) docker run -d -p 3307:3306 -e MYSQL_PASS="bugs" --name mysql tutum/m

docker自动部署spring-boot多模块依赖工程

使用docker部署spring-boot多模块依赖工程 转载:https://hbxflihua.iteye.com/blog/2432005 使用docker部署spring-boot多模块依赖工程 项目架构 dw | |----dw-demo(接口demo) | |----dw-core(代码核心) | |----dw-api(接口,依赖dw-core) | |----dw-manage(后...

起航 3988

【vivado PG学习】1 PG168:7 Series FPGAs Transceivers官方配置方法学习笔记

介绍: The 7 series FPGAs Transceivers Wizard LogiCORE™ IP 自动创建配置7系列fpga 收发器的HDL封装。向导可以配置一个或多个支持行业主流标准的高速串行收发器。或者从零开始支持各种自定义协议。 功能: 创建配置7系列fpga 收发器的HDL封装。 自动对模拟设置进行配置。 预定义了提供Aurora 8B/10B, Aurora 64B/66B, CEI-6G,DisplayPort, Interlaken, Open Base StationAr..

w0shishabi的博客 5万+

CentOS 环境 sngrep 安装及使用

在呼叫中心类应用开发过程中,经常需要对 SIP 信令抓包,分析排查问题。通常抓包的工具非常多样,如 Wireshark、tcpdump、ngrep 等都是可选项,但是针对 SIP 信令的抓包,sngrep 则更为好用。因为 sngrep 不仅提供了图形界面,还会将一通会话的 SIP 信令关联汇总,非常直观执行以下命令下载 的相关依赖库 1.2 添加 sngrep 的源并导入 执行下面的命令新增一个源仓库配置文件 然后在该文件中写入以下配置内容 执行命令导入源仓库的公钥 1.3 安装 sngrep

谈谈1974 8148

SpringBoot项目(单模块、多模块)使用docker容器运行jar包镜像(踩坑)

SpringBoot项目(单模块、多模块)使用docker容器运行jar包镜像(采坑) 1.mavem docker插件配置 &amp;amp;lt;!--docker 插件配置--&amp;amp;gt; &amp;amp;lt;build&amp;amp;gt; &amp;amp;lt;finalName&amp;amp;gt;生成jar包的名称&amp;amp;lt;/finalName&amp;amp;gt;

北眼的博客 7756

期货缠论实战:文华财经笔中枢指标公式解析与博易大师应用指南

本文深入解析期货缠论实战中的文华财经笔中枢指标公式及其在博易大师平台的应用技巧。详细介绍了笔中枢指标的核心逻辑、公式拆解、参数设置及多周期联合作战策略,帮助交易者提升市场分析能力与交易胜率。特别适合期货交易者学习缠论指标的实际应用。

weixin_42522552的博客 357

SpringBoot多模块项目打包docker镜像问题

如果项目是SpringBoot多模块项目,那么直接点package可能会有问题,找不到其他模块的依赖什么的问题,具体报错忘了记录了 问题描述:我有A,B两个模块,package的时候,提示我找不到B.jar , 项目较大,分为多个模块,例如A模块依赖了B模块,则在A模块pom里面配置了如下 <dependency> <groupId>com.xxx.x...

wu__peng的博客 3084

网络设备调试指南:如何用MDIO Clause22/45协议读写Marvell MV88E6390寄存器

本文深入解析了如何通过MDIO Clause 22/45协议对Marvell MV88E6390交换芯片进行寄存器读写调试。文章详细对比了两种协议的本质区别与适用场景,并重点阐述了MV88E6390的直接与间接寻址策略,提供了实战代码示例与关键调试技巧,帮助网络工程师高效解决配置与通信问题。

tequila的博客 518

节省人力成本40%!仓储物流AI机器人调度系统实战案例(含路径规划算法与系统架构图)

首先,我们需要定义一个Node类self.x = x # 节点x坐标self.y = y # 节点y坐标self.g = g # 从起点到当前节点的实际成本(g值)self.h = h # 从当前节点到终点的启发式成本(h值)self.f = g + h # 总成本(f值)self.parent = None # 父节点(用于回溯路径)self.task_id = task_id # 任务IDself.priority = priority # 任务优先级(1=最高,5=最低)

小程序开发 950

Docker快速搭建Bugzilla

sudo yum install docker-io service docker start docker pull dklawren/docker-bugzilla 启动bugzilla: docker run -d -t --privileged \ --name bugzilla \ --hostname bugzilla \ --publish 8080:80 \ --publish 2222:22 \ --volume /sys/fs/cgroup:/sys/fs/cgroup

打不死的小强 1892

【OCPP】ocpp1.6协议3.3章节:功能配置文件及接口

Smart Charging Profile中定义了4个接口请求,即GetCompositeSchedule、ClearChargingProfile、SetChargingProfile和ClearCache等。Smart Charging: 包含智能充电相关的功能,如计划充电,报告充电计划,并改变充电速度。Core: 包含电动汽车充电相关的基础功能,如启动和停止充电,更改充电配置,报告充电状态等。Reservation: 包含预约服务相关的功能,如创建,取消和更改预约。

qq_53871375的博客 2171

Springboot进一步开发--用 Docker 和 Dify 部署你的 Spring Boot 项目

本文详细介绍了如何将SpringBoot项目部署到Docker容器中,并将其与Dify平台集成。主要内容包括:1)Docker核心概念(镜像、容器、Dockerfile)解释;2)SpringBoot项目打包和Docker镜像构建步骤;3)Docker容器运行与管理;4)Dify平台安装配置,包括环境变量设置和镜像源配置;5)将SpringBoot应用注册为Dify工具的方法,包括OpenAPI Schema编写和测试流程。文章提供了完整的操作指南和示例代码,帮助开发者实现从本地开发环境到生产部署的完整流程

2301_79503048的博客 1426

CH7034B显示模块原理图设计,已量产

显示桥接板的价值,不在于简单把 RGB 排线换成另一种接口,而在于能否把并行视频、时钟、显示控制、模拟输出和辅助配置同时组织成稳定系统。当前这张 CH7034B 原理图就是这种思路:U3 CH7034B 作为核心桥接芯片,输入侧是 LCD_R0~R7、LCD_G0~G7、LCD_B0~B7、LCD_DE、LCD_HSYNC、LCD_VSYNC、LCD_CLK 与 LCD_BL,输出侧则通过 DAC0~DAC2 和 DDC_SC/DDC_SD 形成模拟显示接口边界。

不脱发的程序猿 162

【温室气体数据集】全球总碳柱观测网络 TCCON

【温室气体数据集】全球总碳柱观测网络 TCCON

WW、forever的博客 437

springboot容器化打包部署_Docker部署SpringBoot项目

1.创建springboot项目创建springboot项目package com.eangulee.demo.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;import org.springframework...

weixin_39531834的博客 196

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Docker 入门看这一篇就够了:从 0 到部署 Java 和 Node 项目实战

很多人觉得 Docker 很难,其实只是没跑通完整流程。这篇内容我们从 0 开始,讲清 Docker 的核心概念,并通过 Java、Node 项目实战,完成在 Linux 服务器上的部署,新手也能看懂、照着做就能成功。

qq_31676725的博客 677

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Dockerfile将java项目打包成镜像并运行部署在服务器

2.将打包好的jar包拖入一个文件夹,然后拖入服务器中任意一个文件夹下mkdir新建一个文件夹。6.重启这个镜像docker restart mycontainer。3.然后编写Dockerfile文件,与jar包放入同一个文件夹。4.然后docker build -t myimages ./5.docker images 查看是否已经有这个镜像。7.服务器ip:端口 访问页面/进行其它操作。设定一个端口,用于访问,端口注意不要被占用。

Rui_bbm的博客 610

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

CICD——idea docker-maven插件容器化部署springboot项目,并push到私有docker仓库,优化=>jenkins构建

1.服务器开放docker端口,默认2357 1. vim /usr/lib/systemd/system/docker.service 在ExecStart=/usr/bin/dockerd-current \ 后追加 ExecStart=/usr/bin/dockerd-current \ 2.重新加载配置,重启docker服务 systemctl daemon-reload system...

MJ的博客 870

使用 Docker 部署 Spring Boot 项目

Docker 技术发展为微服务落地提供了更加便利的环境,使用 Docker 部署 Spring Boot 其实非常简单,这篇文章我们就来简单学习下。首先构建一个简单的 S...

纯洁的微笑 1万+

使用Docker部署Spring Boot项目

本文使用Docker部署Spring Boot项目。部署之前需要环境中已经安装Docker和Maven(用于打包),所以本文先进行安装Docker和Maven;接着搭建一个Spring Boot项目,使其支持Docker部署;最后进行部署和测试。

码上暴富 8026

使用Docker部署Spring boot项目

使用Docker部署Spring boot项目   一、前提条件 1.有一个Spring boot项目   编译打包(mvn package)后在工程target目录下生成文件springBootDocker.jar   项目源码:     maven打包的jar包:     2. 一台装有Docker的Linux主机和一台Docker Registry(Harbor...

funtaster的博客 7万+

Docker部署Spring Boot项目的两种方式总结

点击上方蓝色字体,选择“标星公众号”优质文章,第一时间送达关注公众号后台回复pay或mall获取实战项目资料+视频作者:LemonSquashwww.cnblogs.com/npeng/...

公众号-老炮说Java 7607

在 Linux 上使用 Docker 部署 Spring Boot 项目

通过以上步骤,您可以在 Linux 服务器上顺利部署 Spring Boot 项目,结合 Docker 和 Docker Compose,实现高效的容器化管理。在开始 Docker 部署之前,首先需要确保 Spring Boot 项目已经打包为可执行的 JAR 文件。命令的路径,确保 JAR 文件正确复制到容器。在 Spring Boot 项目根目录下创建。打包完成后,JAR 文件通常位于。端口被占用,可以更换端口,例如。作为数据库连接 URL,而不是。目录下(Maven)或。目录下(Gradle)。

qq_56694800的博客 1723
上一篇: Java导出CSV文件
下一篇: MAC操作系统添加命令别名
Geek_Alex
博客等级 码龄9年 14粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值