一、安装Docker环境

yum install docker

安装完成后,使用下面的命令来启动 docker 服务,并将其设置为开机启动:

systemctl start docker.service

systemctl enable docker.service

下一步,使用Docker 中国加速器

vi /etc/docker/daemon.json

#添加后

重新启动docker

systemctl restart docker

输入docker version 返回版本信息则安装成功

二、安装JDK

yum -y install java-1.8.0-openjdk*

下一步,配合环境变量 打开 vim /etc/profile 添加一下内容

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-7.b10.el7.x86_64/jre
export PATH=$PATH:$JAVA_HOME/bin
修改完成之后,使其生效

source /etc/profile

输入java -version 返回版本信息则安装正常

三、安装MAVEN

下载:http://mirrors.shu.edu.cn/apache/maven/maven-3/

这里面有maven的多个版本,这里用的是apache-maven-3.5.3-bin.tar.gz

#解压

tar vxf apache-maven-3.5.3-bin.tar.gz

#移动

mv apache-maven-3.5.2 /usr/local/maven3

修改环境变量,在/etc/profile 中添加以下几行

MAVEN_HOME=/usr/local/maven3
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
记得执行source /etc/profile使环境变量生效。

然后,输入mvn -version 返回版本信息则安装正常

##################到这里环境就配置完成了,后面就是真正部署的部分了,因为过程曲折,可能比较详细,亲测可用##############

先使用Maven 打包,mvn clean package, 生成jar包(spring-boot-docker-0.0.1-SNAPSHOT.jar)

编写Dockerfile:

接下来,创建一个空目录,将Dockerfile和spring-boot-docker-0.0.1-SNAPSHOT.jar放入其中,构建镜像

docker build -t huangll/springboot-docker .    (注意了,这里有个小点点!!!)

大概就是这样执行的

Sending build context to Docker daemon 16.01 MB
Step 1/4 : FROM openjdk:8-jdk-alpine
---> 224765a6bdbe
Step 2/4 : VOLUME /tmp
---> Using cache
---> c34991cf3051
Step 3/4 : ADD spring-boot-docker-0.0.1-SNAPSHOT.jar app.jar
---> 344587401990
Removing intermediate container a88d2b603c17
Step 4/4 : ENTRYPOINT /usr/bin/java -Djava.security.egd=file:/dev/./urandom -jar /app.jar
---> Running in 1c270b3dad07
---> 65448657984f
Removing intermediate container 1c270b3dad07
Successfully built 65448657984f

下一步:docker images 查看镜像

运行容器:
docker run -d --name springboot -p 8888:8888 spring-boot/spring-boot-docker

docker ps 查看容器:

到这里就发布成功了!!!

我的只是测试项目,访问路径是:http://127.0.0.1:8888/

Docker容器发布spring boot项目的更多相关文章

  1. 【原创】Docker容器及Spring Boot微服务应用

    Docker容器及Spring Boot微服务应用 1 什么是Docker 1.1 Docker的出现 问题一:项目实施环境复杂问题 传统项目实施过程中经常会出现“程序在我这跑得好好的,在你那怎么就不 ...

  2. 在Docker中部署Spring Boot项目

    想要获取更多文章可以访问我的博客 - 代码无止境. 微服务现在在互联网公司可谓非常流行了,之前找工作的的时候很多HR电话约面试的时候都会问对微服务是否有过接触.而微服务和Docker可以非常完美的结合 ...

  3. docker+jenkins实现spring boot项目持续集成自动化部署

    一.首先jenkins与docker的安装参考下面链接   安装jenkins:  https://www.cnblogs.com/jescs/p/7644635.html   安装docker:ht ...

  4. 阿里云服务器 配置 tomcat 发布spring boot项目 的具体操作 【使用公网ip】

    1.前言 spring boot 转成war包 后用tomcat发布的具体操作在我另一篇随笔有详细记载,不论是window系统还是Linux系统,tomcat的发布配置都是一样的,所以这里不具体讲这个 ...

  5. Jenkins 自动发布 Spring Boot 项目(Gitee)

    1.下载 wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war,并部署到tomcat下 2.机器安装好 java ,maven ,g ...

  6. IDEA连接远程服务器Docker部署Spring Boot项目

    开始前的准备工作 拥有一台云服务器,我的是腾讯云服务器(CentOS7) 腾讯云服务器安装Docker,我的版本是Docker 19.03.9,关于安装和配置镜像加速器可以查阅我的另一篇博文:http ...

  7. spring boot 项目打成war,丢入tomcat独立运行

    小插曲:通过cmd运行startup.bat,cmd界面显示乱码 解决方法:进入tomcat目录,conf文件夹,用编辑器打开logging.properties 将java.util.logging ...

  8. spring boot 项目打成war包部署到服务器

    这是spring boot学习的第二篇了,在上一篇已经整合了spring boot项目了,如果还有小伙伴没有看得可以先去看第一篇 基础整合spring boot项目 到这里的小伙伴应该都是会整合基本的 ...

  9. spring boot项目发布tomcat容器(包含发布到tomcat6的方法)

    spring boot因为内嵌tomcat容器,所以可以通过打包为jar包的方法将项目发布,但是如何将spring boot项目打包成可发布到tomcat中的war包项目呢? 1. 既然需要打包成wa ...

随机推荐

  1. U盘无法安装win10提示Your PC/Device needs to be repaired

    前一阵子把笔记本自带的win8升级到8.1,又升级到win10. 差不多有一个月没有开机,前几天开机后进不了系统,出现如下图的提示.买电脑自带的win8是正版的,但升级到win10后就过期了,也真是坑 ...

  2. .NET(C#)连接各类数据库代码-集锦

    1.C#连接连接Access 复制代码代码如下: using System.Data;   using System.Data.OleDb;   ..   string strConnection=& ...

  3. 并发服务器--02(基于I/O复用——运用epoll技术)

    本文承接自上一博文I/O复用——运用Select函数. epoll介绍 epoll是在2.6内核中提出的.和select类似,它也是一种I/O复用技术,是之前的select和poll的增强版本. Li ...

  4. TCP的核心系列 — 重传队列的更新和时延的采样(二)

    在tcp_clean_rtx_queue()中,并非对每个ACK都进行时延采样.是否进行时延采样,跟这个ACK是否为 重复的ACK.这个ACK是否确认了重传包,以及是否使用时间戳选项都有关系. 本文主 ...

  5. 【Android 应用开发】Android中的回调Callback

    回调就是外部设置一个方法给一个对象, 这个对象可以执行外部设置的方法, 通常这个方法是定义在接口中的抽象方法, 外部设置的时候直接设置这个接口对象即可. 例如给安卓添加按钮点击事件, 我们创建了OnC ...

  6. Windows2008+MyEclipse10+Android开发环境搭配

    Windows2008+MyEclipse10+Android开发环境搭配 知识要点:64位系统中离线安装MyEclipse的ADT插件步骤办法 功能描述:解决Windows2008+MyEclips ...

  7. STM32中GPIO的8种工作模式

    一.推挽输出:可以输出高.低电平,连接数字器件:推挽结构一般是指两个三极管分别受两个互补信号的控制,总是在一个三极管导通的时候另一个截止.高低电平由IC的电源决定.形象点解释:推挽,就是有推有拉,任何 ...

  8. LeetCode(40)-Merge Sorted Array

    听到初爱有感 开头啰嗦两句,刚在做算法题目的时候,听到了杨宗纬的<初爱>,突然有了一种本科时候的感觉,想想自己现在研二了,青春喂了狗,我果断喝了一罐啤酒,循环这首歌到吐-.. 题目: Gi ...

  9. obj-c编程13:归档

    这篇归档内容的博文也挺有趣的,笨猫对好玩的东西一向感兴趣啊!如果用过ruby就会知道,obj-c里的归档类似于ruby中的序列化概念,不过从语法的简洁度来说,我只能又一次呵呵了. 下面大家将会看到2种 ...

  10. className.class.getResourceAsStream与ClassLoader.getSystemResourceAsStream区别

    className.class.getResourceAsStream : 一: 要加载的文件和.class文件在同一目录下,例如:com.x.y 下有类Test.class ,同时有资源文件conf ...