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

来源:脚本之家  责任编辑:小易  

简介:

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项目内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

您可能感兴趣的文章:在Idea中使用Docker部署SpringBoot项目的详细步骤使用Docker部署SpringBoot项目的实现方法利用Dockerfile部署SpringBoot项目的方法Springboot项目打war包docker包找不到resource下静态资源的解决方案详解springboot项目docker部署实践

  • 本文相关:
  • docker中时区问题的处理方法
  • docker部署lnmp&phpmyadmin的方法步骤
  • 关于docker安全之docker-tls加密通讯问题
  • docker容器化部署尝试——多容器通信(node+mongodb+nginx)
  • docker环境下分布式运行jmeter的教程详解
  • 使用 docker 搭建 laravel 本地环境的教程详解
  • 两种方式创建docker镜像的启动容器时区别介绍(总结篇)
  • 在centos 7上安装docker环境的方法与注意事项
  • linux新建用户并允许docker及docker基本命令
  • docker安装并运行rabbitmq的实例代码
  • springboot使用docker怎么部署到服务器
  • 怎么把spring boot打包成镜像部署到docker
  • 如何在docker中部署springboot的web应用
  • docker部署springboot是不是服务器要maven
  • 怎么把spring boot打包成镜像部署到docker
  • docker 启动springboot不能上传文件
  • springboot如何连接docker 搭建的redis 哨兵?
  • 如何安装在idea上使用docker+nginx+mongodb+spring...
  • springboot docker 与dubbo zookeeper 的区别在哪
  • 如何在docker中部署springboot的web应用
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全dockerhyper-vvmwarevirtualboxxenserverkvmqemuopenvzxencloudstackopenstack云计算技术云其它首页服务器云和虚拟化在idea中使用docker部署springboot项目的详细步骤使用docker部署springboot项目的实现方法利用dockerfile部署springboot项目的方法springboot项目打war包docker包找不到resource下静态资源的解决方案详解springboot项目docker部署实践docker中时区问题的处理方法docker部署lnmp&phpmyadmin的方法步骤关于docker安全之docker-tls加密通讯问题docker容器化部署尝试——多容器通信(node+mongodb+nginx)docker环境下分布式运行jmeter的教程详解使用 docker 搭建 laravel 本地环境的教程详解两种方式创建docker镜像的启动容器时区别介绍(总结篇)在centos 7上安装docker环境的方法与注意事项linux新建用户并允许docker及docker基本命令docker安装并运行rabbitmq的实例代码docker 给运行中的容器设置端口映docker获取镜像报错docker: errodocker.service启动失败:unit ndocker 清理命令集锦浅谈docker-compose网络设置之neubuntu14.04+docker的安装及使用docker容器如何优雅的终止详解docker容器访问宿主机网络的方法详解如何使用docker部署一个web项详解docker国内镜像拉取和镜像加docker 数据卷权限实例详解详解docker守护进程的配置及日志docker容器连接相互通信的实现dockerfile中entrypoint 和 cmd的区别说明利用docker搭建laravel开发环境的完整步骤docker私有仓库的搭建和使用详解docker容器编排实现过程解析elasticsearch使用常见问题解决方案docker的boot2docker.iso镜像使用docker image删不掉的解决办法
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved