Linux Docker运行springboot项目的步骤详解

简介:

Docker 运行springboot项目其实配置非常简单,跟咱们直接到Linux上运行springboot是一样一样的。开始

一:咱们首先要有一个运行Docker环境

第一步:使用 yum 安装(CentOS 7下)

Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。

通过 uname -r 命令查看你当前的内核版本

[root@iZbp1gp1t778obaz5m8vk8Z ~]# uname -r
3.10.0-957.21.3.el7.x86_64

第二步:安装 Docker

Docker 软件包和依赖包已经包含在默认的 CentOS-Extras 软件源里,安装命令如下:

[root@iZbp1gp1t778obaz5m8vk8Z ~]# yum -y install docker

安装完成。

第三步:启动 Docker 后台服务

[root@iZbp1gp1t778obaz5m8vk8Z ~]# service docker start

第四步:测试运行 hello-world

[root@izwz99z5o9dc90keftqhlrz ~]# docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
  (amd64)
 3. The Docker daemon created a new container from that image which runs the
  executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
  to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

由于本地没有hello-world这个镜像,所以会下载一个hello-world的镜像,并在容器内运行,好了咱们开始真实的使用。

二:咱们开始来自己的docker springboot的配置

第一步:创建运行docker 的运营账号 新增加-与后面的文档内容无关【运营一般是不能用root去干的哈

[root@iZbp1gp1t778obaz5m8vk8Z ~]# useradd -d /home/hn-docker -m hn-docker  #创建一个运营账号
[root@iZbp1gp1t778obaz5m8vk8Z ~]#
[root@iZbp1gp1t778obaz5m8vk8Z ~]# passwd hn-docker  #修改密码
Changing password for user hn-docker.
New password:
BAD PASSWORD: The password contains the user name in some form
Retype new password:
passwd: all authentication tokens updated successfully.
[root@iZbp1gp1t778obaz5m8vk8Z ~]# sudo groupadd docker		#添加docker用户组,如果已有就不用
[root@iZbp1gp1t778obaz5m8vk8Z ~]# sudo gpasswd -a hn-docker docker  ##将登陆用户加入到docker用户组中
Adding user hn-docker to group docker

第二步:开始做docker的运维

[root@izwz99z5o9dc90keftqhlrz Docker]# pwd
/root/Docker
[root@izwz99z5o9dc90keftqhlrz Docker]#
[root@izwz99z5o9dc90keftqhlrz Docker]#
[root@izwz99z5o9dc90keftqhlrz Docker]# mkdir elasticsearch
[root@izwz99z5o9dc90keftqhlrz Docker]#
[root@izwz99z5o9dc90keftqhlrz Docker]# cd elasticsearch/
[root@izwz99z5o9dc90keftqhlrz elasticsearch]#

1、运行mvn install 将项目打包成jar包
2、复制jar包到当前创建的文件夹中,和Dockerfile文件到一个文件夹下

[root@izwz99z5o9dc90keftqhlrz elasticsearch]# touch Dockerfile
[root@izwz99z5o9dc90keftqhlrz elasticsearch]# vi Dockerfile 

# 基础镜像使用java
FROM java:8
# 作者
MAINTAINER shixiong <741096017@qq.com>
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar,可以使用相对路径、绝对路径,这里相对路径
ADD springboot-es6.jar /springboot-es6.jar
# 运行jar包
RUN bash -c 'touch /springboot-es6.jar'
#设置时区-不然比当前时间慢8小时
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/springboot-es6.jar"]

三:构建我们的springboot项目至Docker,生成docker镜像

3、进入该文件夹,然后运行命令,带版本,不带版本 运行时不一样哟!!!

[root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker build -t springboot-es6:v1.0 .
上面的配置:运行时命令为:
[root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6:v1.0

[root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker build -t springboot-es6 .
上面的配置:运行时命令为:
[root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6

带了v1.0生成的镜像,跑错了命令就是在这样:

四:Docker内运行springboot项目

[root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6
e7a56662f804ef72e7dcae3fa71e840c35e28e18aa1aff7e98b71d900b17c305
[root@izwz99z5o9dc90keftqhlrz elasticsearch]# 

五:看看我们的接口能否使用了

接口完美使用,后面写怎么管理容器、日志怎么查看。

到此这篇关于Linux Docker运行springboot项目的文章就介绍到这了,更多相关Docker运行springboot项目内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 使用Docker部署SpringBoot项目的实现方法

    Docker 技术发展为微服务落地提供了更加便利的环境,使用 Docker 部署 Spring Boot 其实非常简单,这篇文章我们就来简单学习下. 首先构建一个简单的 Spring Boot 项目,然后给项目添加 Docker 支持,最后对项目进行部署. 一个简单 Spring Boot 项目 在 pom.xml 中 ,使用 Spring Boot 2.0 相关依赖 <parent> <groupId>org.springframework.boot</groupId>

  • 详解springboot项目docker部署实践

    网上查了下大部分boot项目部署都是在linux和docker hub环境下完成的,由于本人开发环境在windows下面,并且docker容器也是使用的docker tools,而且也没有做docker hub的加速.所以就尝试在windows环境下利用阿里云docker仓库完成部署. 1.在docker tools 中新建文件夹,并且找到位置,然后把打包好的boot jar文件放入新建的文件夹中 在该文件夹下面新建一个Dockerfile文件,示例如下: FROM daocloud.io/ja

  • 利用Dockerfile部署SpringBoot项目的方法

    1.创建一个SpringBooot项目并且打成jar包 2.在Linux中创建一个文件夹,来做docker测试 [root@izwz90lvzs7171wgdhul8az ~]# mkdir /root/docker_test 3.将jar包上传到Linux中 创建存放jar包的文件夹 [root@izwz90lvzs7171wgdhul8az docker_test]# mkdir /root/docker_test/jar 然后利用XShell上传jar包到上面的文件夹中 4.编写Docke

  • 在Idea中使用Docker部署SpringBoot项目的详细步骤

    前言 项目需要: 安装Dockeridea中安装docker插件,并配置docker一个SpringBoot项目创建Dockerfile 一.下载.安装.配置Docker下载Docker 下载地址:官网下载 Docker 安装 一直下一步就行 配置路径:Settings–General 勾选 Expose daemon on tcp://localhost:2375 without TLS 设置镜像,提高下载镜像的速度https://xaiqlt1z.mirror.aliyuncs.com 测试

  • Springboot项目打war包docker包找不到resource下静态资源的解决方案

    前一段时间遇到一个问题,是关于读取项目中文件资源的问题.我是一个maven工程 我把一张照片放到resource下面,然后在本地读取的时候可以读取到,但是一旦打成WAR包以后就总是包找不到文件资源错误.我的war包是springboot打的war包,是内嵌的tomcat所以不解压,然后系统去找路径的时候会发现是个WAR包,而图片在WAR包内,所以找不到. 为了解决这个问题,我走了好多弯路,一直在路径上花费时间. 一开始使用修改配置文件的方式: # 配置静态资源访问前缀 spring.mvc.st

  • Linux Docker运行springboot项目的步骤详解

    简介: Docker 运行springboot项目其实配置非常简单,跟咱们直接到Linux上运行springboot是一样一样的.开始 一:咱们首先要有一个运行Docker环境 第一步:使用 yum 安装(CentOS 7下) Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker . 通过 uname -r 命令查看你当前的内核版本 [root@iZbp1gp1t778obaz5m8vk8Z ~]# uname

  • jboss( WildFly)上运行 springboot程序的步骤详解

    WildFly,原名 JBoss AS(JBoss Application Server) 或者 JBoss,是一套应用程序服务器,属于开源的企业级 Java 中间件软件,用于实现基于 SOA 架构的 Web 应用和服务. WildFly 包含一组可独立运行的软件. WildFly采用积极的方法进行内存管理.开发基本运行时服务是为了最大程度地减少堆分配.这些服务在重复的完整解析中使用公共的缓存索引元数据,从而减少了堆和对象的流失.模块化类加载的使用可防止重复类和加载超出系统配置要求的类.这不仅减

  • Docker运行springboot项目的实现

    简介: Docker 运行springboot项目其实配置非常简单,跟咱们直接到Linux上运行springboot是一样一样的.开始 一:咱们首先要有一个运行Docker环境 第一步:使用 yum 安装(CentOS 7下) Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker . 通过 uname -r 命令查看你当前的内核版本 [root@iZbp1gp1t778obaz5m8vk8Z ~]# uname

  • springboot上传图片文件步骤详解

    步骤一:基于前面springboot入门小demo 基于的springboot入门小demo,已包含了前面文章的知识点(比如:热部署.全局异常处理器). 步骤二:创建uploadPage.jsp上传页面 在jsp目录下新建uploadPage.jsp,需要几点: 1. method="post" 是必须的 2. enctype="multipart/form-data" 是必须的,表示提交二进制文件 3. name="file" 是必须的,和后续

  • gitee命令行上传项目的步骤详解

    1.注册gitee账户 2.登录gitee新建个仓库,用来存放项目 3.找到需要上传的项目,右键,git bash here 这里需要先去官网下载安装git git官网 4.git init命令在当前文件夹下创建一个本地仓库 5.git remote add origin 远程仓库地址 6.对需要上传的项目添加追踪,git add .代表当前文件夹下的所有文件都添加追踪 git add "项目名" 单独给某个项目添加追踪 7.先提交到本地仓库 git commit -m "提

  • 使用IDEA创建java项目的步骤详解(hello word)

    前提:已安装好jdk,配置好环境变量.我使用的是java 8 首先在自己的D盘下建一个文件夹,用来存放我们待会新建的项目,我创建了IdeaProject: 1,第一步打开idea 2,第二步选择创建java项目,并选择自己的jdk(我自己本地已经配置了所以有),没有可以点击new去自己的安装目录下找,一般默认安装C:\Program Files\Java,然后选择next 下一步 3,第三步将"Create project from template"前面的勾去掉,然后点击"

  • 亲手教你IDEA2020.3创建Javaweb项目的步骤详解

    IDEA2020.3激活码 最新idea2020激活码超详细教程(设置插件仓库成功激活到2099年) 关于最新IDEA2020.2.1,2.2,3以上破解,激活失效,重新激活的问题 创建Javaweb项目 第一步:在当前Project下创建一个Java的Module 第二步:右键当前模块选择Add Frameworks Support勾中Web Application 第三步:点击Edit Configurations,点击+号选择Tomcat Server的Local然后再选择Deployme

  • vue脚手架项目创建步骤详解

    vue脚手架 -> vue.cli 快速的创建一个大型的功能齐全的vue项目模板(初始化项目) 土味解释:快速的创建一个空的vue项目 安装(全局安装) 全局安装 > npm i @vue/cli -g 创建vue脚手架项目 > vue create 项目名 配置选项 Vue CLI v4.5.11 ? Please pick a preset: (Use arrow keys) > Default ([Vue 2] babel, eslint) Default (Vue 3 Pr

  • java创建jar包并被项目引用步骤详解

    目录 jar包? 1.创建项目和验证 1.1创建项目 1.2 创建包和类 1.3相应的代码 2.打包和引用包 2.1打jar包 2.2 导入生成的jar包 2.3 验证jar包导入/应用的正确性 jar包? jar包: 实现了特定功能的,java字节码文件的压缩包.本质上就是一个编译后的java项目,打包成jar文件log4j.jar , mysql-connection-8.01.jar等. 自己创建jar包,让别人来用: 1.新建java项目 2.创建实现了特定功能的类 3.将该项目生成为j

  • IDEA通过Docker插件部署SpringBoot项目的过程详解

    1.配置Docker远程连接端口 找到并编辑服务器上的docker.service文件. vi /usr/lib/systemd/system/docker.service 如下图所示的地方,添加: -H tcp://0.0.0.0:2375 2.重启Docker systemctl daemon-reload service docker restart 3.服务器开放端口 我用的阿里云服务器,在安全组的配置规则,开放端口. 4.测试远程连接是否正常 curl http://localhost

随机推荐