安装:

  1、Docker要求CentOS系统的内核版本高于 3.10 ,通过 uname -r 命令查看你当前的内核版本是否支持安账docker

  2、更新yum包:sudo yum update

  3、安装需要的软件包,yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

    sudo yum install -y yum-utils device-mapper-persistent-data lvm2

  4、设置yum源:sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

     

  5、可以查看所有仓库中所有docker版本,并选择特定版本安装:yum list docker-ce --showduplicates | sort -r

    

  6、安装docker:sudo yum install docker-ce-17.12.0.ce

  7、启动、设置开启开机启动

    sudo systemctl start docker

    sudo systemctl enable docker

  8、验证安装是否成功(有client和service两部分表示docker安装启动都成功了):docker version

    

  9、查看docker启动状态:systemctl status docker(如下图即启动成功)   


卸载:

  1、查询docker安装过的包:

    yum list installed | grep docker

 

  2、删除安装包:

   yum remove docker-ce.x86_64 ddocker-ce-cli.x86_64 -y

  3、删除镜像/容器等

    rm -rf /var/lib/docker

  5.启动docker镜像容器服务(//将宿主机的9090端口映射到容器的8090端口):docker   -it    -p  9090:8090    应用服务名称

6.dockerfile 里面配置:

FROM         java:8
workdir    /usr/docker
add  /api-web.jar ./api-web.jar<br>env LOGPATH=/usr/docker/log/api-web.log \
PORT=8080
cmd java -jar /usr/docker/api-web.jar

部署前提条件:

1.可以运行jar包的环境
2.机器上已经安装了docker
3.准备部署的springboot的jar包
4.Dockerfile文件

准备Dockerfile

前三条都很容准备,创建一个Dockerfile:

FROM java:8
VOLUME /tmp
ADD dalaoyang_mgr.jar /dalaoyang.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/dalaoyang.jar"]

解释一下需要注意的地方

1.java:8 是使用jdk版本
2.dalaoyang_mgr.jar是使用jar包名称
3.ADD dalaoyang_mgr.jar /dalaoyang.jar 拷贝jar到容器
4.ENTRYPOINT 执行jar文件

生成docker镜像

将Dockerfile和jar放在一个文件夹,使用下面命令生成镜像,注意最后的.

docker build -t dalaoyang .

注意:dalaoyang是生成的镜像名称。

更多docker build命令可以查看菜鸟教程

查看一下docker镜像

docker images

如图,可以看到已经有了一个名称为dalaoyang的镜像

运行Docker容器

代码如下

docker run -d -p 9000:9000 dalaoyang

解释一下需要注意的地方

1.-d 后台运行
2.-p 9000:9000 将docker容器的9000端口映射到服务器上的9000端口

到这里就配置完成了,在浏览器使用:服务器ip:9000就能访问docker容器内部署的springboot项目了。

停止一个正在运行的容器 
1、docker stop 此方式常常被翻译为优雅的停止容器

docker stop 容器ID或容器名 
参数 -t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态 
docker stop -t=60 容器ID或容器名

2、docker kill

docker kill 容器ID或容器名 :直接关闭容器

由此可见stop和kill的主要区别:stop给与一定的关闭时间交由容器自己保存状态,kill直接关闭容器

想更进一步了解处理机制的可以看下面这篇文章,比较详细但是需要其他方面的 
https://www.jb51.net/article/96617.htm

三、重启一个容器

docker restart 容器ID或容器名 :不管容器是否启动,直接重启容器 
1. 首先 docker ps 查看正在运行的容器信息,显示2分钟前启动运行 
2. docker restart 59ec 重启容器 
3. 再次 docker ps 查看容器信息 显示 2秒前启动运行 

docker restart 参数 
-t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态 

docker logs -f -t --since="2017-05-31" --tail=10 edu_web_1

--since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。

-f : 查看实时日志

-t : 查看日志产生的日期

-tail=10 : 查看最后的10条日志。

edu_web_1 : 容器名称

linux环境安装docker,部署应用的更多相关文章

  1. Linux环境安装Docker

    1. 使用APT安装 # 更新数据源 apt-get update # 安装所需依赖 apt-get -y install apt-transport-https ca-certificates cu ...

  2. Linux环境安装Docker入门教程

    安装 下载 wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.1-ce.tgz 解压 tar -xvf ...

  3. mosquitto在Linux环境下的部署/安装/使用/测试

    mosquitto在Linux环境下的部署 看了有三四天的的源码,(当然没怎么好好看了),突然发现对mosquitto的源码有了一点点感觉,于是在第五天决定在Linux环境下部署mosquitto. ...

  4. Linux 环境安装 Node、nginx、docker、vsftpd、gitlab

    Linux 环境安装 centos7 # 更新yum yum update -y 0. 防火墙 firewalld 新入的JD云服务器,发现防火墙默认是关闭的. # 查看防火墙状态 systemctl ...

  5. rancher说明为什么需要按照指定版本安装以及rancher和节点linux环境配置-docker指定版本安装

    rancher说明为什么需要按照指定版本安装以及rancher和节点linux环境配置-docker指定版本安装 待办 https://blog.csdn.net/CSDN_duomaomao/art ...

  6. 在生产环境使用Docker部署应用

    导读 Docker现在越来越流行,但是真正在生产环境部署Docker还是个比较新的概念,还没有一个标准的流程.作者是ROR的程序员,作者结合平时的部署经验,联系Docker的特点,向大家分享了其在生产 ...

  7. legend3---Windows 7/8/10 系统下Laravel框架的开发环境安装及部署详解(Vagrant + Homestead)

    legend3---Windows 7/8/10 系统下Laravel框架的开发环境安装及部署详解(Vagrant + Homestead) 一.总结 一句话总结: 1.安装的话就是下载好git,va ...

  8. Kafka~Linux环境下的部署

    概念 Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素. 这些数据 ...

  9. 阿里云Linux CentOS 7 Docker部署使用gogs搭建自己的git服务器

    一.前言 Git是目前优秀和流行的源代码管理工具.而GitHub是一个面向开源及私有软件项目的托管云平台,但开源免费,私有收费.而公司出于商业化等目的需要搭建自己的源代码托管服务器.通过网上了解Gog ...

随机推荐

  1. 005-多线程-集合-Map-ConcurrentSkipListMap

    一.概述 ConcurrentSkipListMap是线程安全的有序的哈希表,适用于高并发的场景. ConcurrentSkipListMap和TreeMap,它们虽然都是有序的哈希表.但是,第一,它 ...

  2. Cisco设备自动定时备份配置

    前言 当我们管理的网络设备为个位数的时候,手动的把配置通过tftp方式copy出来还是可以的.但是当我们管理几十台甚至上百台(有点夸张,都这个级别了肯定用专业的运维软件或者开发运维平台进行管理)的时候 ...

  3. 阶段5 3.微服务项目【学成在线】_day17 用户认证 Zuul_09-前端显示当前用户-需求分析

    登陆成功 应该要显示用户的信息 cookie只存了用户的身份令牌.不包含用户的信息 拿着短令牌 请求认证服务获取到jwt.然后存储到sessionStorage 1.用户请求认证服务,登录成功. 2. ...

  4. Qt pri文件

    pri文件就是一个简单的文件夹包含或者动态库调用路径等说明,在pro文件里include了pri文件,相当于把pri文件的内容直接复制到pro文件中

  5. 小程序下载canvas生成图片

    save_share_img:function(img){ var that = this; let { result } = that.data; getData.getData( "sa ...

  6. 游戏协议模拟测试工具(TcpEngine)使用简介

    功能介绍 在有的网络开发需要走二进制流协议场景,比如网络游戏开发,在开发阶段,前端和后端协商好协议后就分别开发.在开发写代码的时候,有时需要对端发送一条完整的协议过来触发一下自己的代码,进行单步调试或 ...

  7. 使用SWO代替UART,实现Printf打印功能

    JTAG接口中,有个SWO引脚,一直没有在意,也没有去研究过是干嘛用的.直到发现ST-LINK V2-1上也有个SWO引脚,于是去研究学习它的作用,用起来相比UART方得便多. 本文内容已经整理成PD ...

  8. 物联网防火墙himqtt源码之MQTT协议分析

    物联网防火墙himqtt源码之MQTT协议分析 himqtt是首款完整源码的高性能MQTT物联网防火墙 - MQTT Application FireWall,C语言编写,采用epoll模式支持数十万 ...

  9. 第 20 课 go如何实现继承的 && 给引用模块起别名

    golang语言中没有继承,但是可以依靠组合来模拟继承和多态. package controllers import ( "encoding/json" md "gowe ...

  10. 最新 蚂蚁金服java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.蚂蚁金服等10家互联网公司的校招Offer,因为某些自身原因最终选择了蚂蚁金服.6.7月主要是做系统复习.项目复盘.Leet ...