docker部署springboot应用
2019独角兽企业重金招聘Python工程师标准>>>
1、将springboot应用打包成可执行jar
个人打包的项目地址:https://gitee.com/suzhe/springboot-item
进入item-hello目录执行如下命令打包。
mvn package -Dmaven.test.skip=true -Ptest
2、可执行jar包上传到linux执行目录
这里上传到了Linux中的目录 /app/hello-app
[root@VM_108_39_centos hello-app]# pwd /apps/hello-app [root@VM_108_39_centos hello-app]# ll -rw-r--r-- 1 root root 17756779 Dec 13 09:32 item-hello-1.0-SNAPSHOT.jar [root@VM_108_39_centos hello-app]#
3、在该目录下创建Dockerfile文件
From java:8 # 将本地文件夹挂载到当前容器 VOLUME /apps/tmp # 复制文件到容器 ADD item-hello-1.0-SNAPSHOT.jar /app.jar # 声明需要暴露的端口 EXPOSE 8090 # 配置容器启动后执行的命令 ENTRYPOINT ["java","-jar","/app.jar"]
[root@VM_108_39_centos hello-app]# ll total 17348 -rw-r--r-- 1 root root 256 Dec 13 09:14 Dockerfile -rw-r--r-- 1 root root 17756779 Dec 13 09:32 item-hello-1.0-SNAPSHOT.jar [root@VM_108_39_centos hello-app]#
4、使用docker build命令构建镜像
[root@VM_108_39_centos hello-app]# docker build -t helloapp:0.0.1 . Sending build context to Docker daemon 17.76 MB Step 1/5 : FROM java:8 Trying to pull repository docker.io/library/java ... sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d: Pulling from docker.io/library/java 5040bd298390: Pull complete fce5728aad85: Pull complete 76610ec20bf5: Pull complete 60170fec2151: Pull complete e98f73de8f0d: Pull complete 11f7af24ed9c: Pull complete 49e2d6393f32: Pull complete bb9cdec9c7f3: Pull complete Digest: sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d Status: Downloaded newer image for docker.io/java:8---> d23bdf5b1b1b Step 2/5 : VOLUME /apps/tmp---> Running in 3bb3065ab081---> b2ae8abc4db6 Removing intermediate container 3bb3065ab081 Step 3/5 : ADD item-hello-1.0-SNAPSHOT.jar /app.jar---> b260ef58051a Removing intermediate container 1b9bfb5dbdf7 Step 4/5 : EXPOSE 8090---> Running in 9b77153d75ea---> aa1ea26fa596 Removing intermediate container 9b77153d75ea Step 5/5 : ENTRYPOINT java -jar /app.jar---> Running in 5a02f129583a---> 65724311b315 Removing intermediate container 5a02f129583a Successfully built 65724311b315 #构建成功 [root@VM_108_39_centos hello-app]#
格式: docker build -t 镜像名称:标签 Dockerfile的相对位置 这里的.代表当前目录
在这里,使用-t选项指定了镜像的标签。
5、启动镜像,加-d可在后台启动
[root@VM_108_39_centos hello-app]# docker run -d -p 8090:8090 helloapp:0.0.1 d296c55ebe53061819e88306db8309266dd97491494e5b431adf961db39d5c58 [root@VM_108_39_centos hello-app]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d296c55ebe53 helloapp:0.0.1 "java -jar /app.jar" 10 seconds ago Up 8 [root@VM_108_39_centos hello-app]#
6、测试应用
访问对应的服务链接。
转载于:https://my.oschina.net/suzheworld/blog/2990878
docker部署springboot应用相关推荐
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4. ...
- Docker 部署SpringBoot项目不香吗?
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:流星007 链接:toutiao.com/i68433912 ...
- Docker系列 四.Docker部署SpringBoot
四.Docker部署SpringBoot 环境&工具: 阿里云轻量级服务器.CentOS 7系统.FinalShell(其他连接客户端也可以).IDEA 1. 创建springboot项目 这 ...
- 又到了上云时刻啦!!!阿里云 Docker部署SpringBoot项目 方便测试的部署方式
又到了上云时刻啦!!!阿里云 Docker部署SpringBoot项目 方便测试的部署方式 部署思路: 具体步骤: 1.打成jar 2.上传到服务器 3.启动JDK容器 4.进入JDK 容器 启动 项 ...
- 使用Docker部署SpringBoot项目(避坑+超级详细版本)
使用Docker部署SpringBoot项目(避坑+超级详细版本) 首先呢,非常感谢我们一起相遇在这个地方,想必此刻的你也是在一个学习求知的过程,我们一样,我们都是在求知的路上匍匐前进!看到这篇文章, ...
- 手牵手教Docker部署Springboot+vue ,全过程十分详细,轻松完成项目部署(简单,高效,通用)
手把手教Docker部署Springboot+vue ,详细全过程,轻松完成项目部署(简单,高效) 上线前准备 腾讯云的服务器,服务器安装好docker 和docker-compose 最好事先了解技 ...
- docker 挂载目录_完美解决:Docker部署SpringBoot项目后图片无法访问和上传,3招搞定!...
以前使用FTP在Linux中使用java -jar xxx.jar部署SpringBoot项目时,由于在项目中指定了主机文件存放路径映射,可以直接访问服务器的文件. 但是最近入坑Docker,将Spr ...
- 使用Docker部署SpringBoot
目录 一个简单 Spring Boot 项目 Spring Boot 项目添加 Docker 支持 构建打包环境 安装 Docker 环境 安装JDK 安装MAVEN 使用 Docker 部署 Spr ...
- docker部署springboot工程
#springboot工程 docker部署教程 服务器环境 192.168.2.157 centos7 docker jdk8 部署步骤 登陆服务器,创建属于自己的账户,如gddxsjy(添加用户命 ...
- Docker 部署SpringBoot应用
1.什么是Docker Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化.容 ...
最新文章
- 用滚轮实现图片缩放〔zz〕
- 《统计自然语言处理》读书笔记 一.基础知识及概念介绍
- leetcode860. 柠檬水找零(贪心)
- spring学习(48):自动装配中定义的bean的作用域
- Axure 共享强制签出签入
- 组策略 之 恢复默认组策略对象命令
- js全局变量和局部变量名称一样_微信小程序的全局变量、页面变量,你真的掌握了?...
- 剑指offer(C++)-JZ23:链表中环的入口结点(数据结构-链表)
- 微信模板消息发送不显示小程序链接的处理
- python 全栈开发,Day126(创业故事,软件部需求,内容采集,显示内容图文列表,MongoDB数据导入导出JSON)...
- jQ+jQ UI制作的一个简单的二级可多选穿梭框
- web网页设计与开发____婚纱网站(5页 汉堡菜单 响应式)
- Microsoft.SharePoint.dll分享
- 公钥基础设施PKI体系介绍
- Freetype字体引擎分析与指南(中文版翻译)
- 沁恒微电子CH347是一款高速USB总线转接芯片
- win10网页找不到服务器dns,找不到服务器或DNS错误怎么办
- Java LPT,使用Java对LPT端口进行编程。真?
- 读叔本华之《人生的智慧》
- iPad Pro如何当外置显示器(win、mac)