linux环境安装docker,部署应用
安装:
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,部署应用的更多相关文章
- Linux环境安装Docker
1. 使用APT安装 # 更新数据源 apt-get update # 安装所需依赖 apt-get -y install apt-transport-https ca-certificates cu ...
- Linux环境安装Docker入门教程
安装 下载 wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.1-ce.tgz 解压 tar -xvf ...
- mosquitto在Linux环境下的部署/安装/使用/测试
mosquitto在Linux环境下的部署 看了有三四天的的源码,(当然没怎么好好看了),突然发现对mosquitto的源码有了一点点感觉,于是在第五天决定在Linux环境下部署mosquitto. ...
- Linux 环境安装 Node、nginx、docker、vsftpd、gitlab
Linux 环境安装 centos7 # 更新yum yum update -y 0. 防火墙 firewalld 新入的JD云服务器,发现防火墙默认是关闭的. # 查看防火墙状态 systemctl ...
- rancher说明为什么需要按照指定版本安装以及rancher和节点linux环境配置-docker指定版本安装
rancher说明为什么需要按照指定版本安装以及rancher和节点linux环境配置-docker指定版本安装 待办 https://blog.csdn.net/CSDN_duomaomao/art ...
- 在生产环境使用Docker部署应用
导读 Docker现在越来越流行,但是真正在生产环境部署Docker还是个比较新的概念,还没有一个标准的流程.作者是ROR的程序员,作者结合平时的部署经验,联系Docker的特点,向大家分享了其在生产 ...
- legend3---Windows 7/8/10 系统下Laravel框架的开发环境安装及部署详解(Vagrant + Homestead)
legend3---Windows 7/8/10 系统下Laravel框架的开发环境安装及部署详解(Vagrant + Homestead) 一.总结 一句话总结: 1.安装的话就是下载好git,va ...
- Kafka~Linux环境下的部署
概念 Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素. 这些数据 ...
- 阿里云Linux CentOS 7 Docker部署使用gogs搭建自己的git服务器
一.前言 Git是目前优秀和流行的源代码管理工具.而GitHub是一个面向开源及私有软件项目的托管云平台,但开源免费,私有收费.而公司出于商业化等目的需要搭建自己的源代码托管服务器.通过网上了解Gog ...
随机推荐
- JS 时间处理(GMT转换,超24小时加一天,时间差计算)
计算天数,加小时,加分数 Date.prototype.Format = function (fmt) { // author: meizz var o = { "M+": thi ...
- 将Python的Django框架与认证系统整合的方法
将Python的Django框架与认证系统整合的方法 这篇文章主要介绍了将Python的Django框架与认证系统整合的方法,包括指定认证后台和编写认证后台等内容,需要的朋友可以参考下 将Django ...
- python2.6.6升级python2.7.14
Centos 6.8系统镜像默认安装的 python 环境是 2.6.6,线上需求需要升级到 2.7.14 版本,网上找了相关资料,升级 python 版本比较容易,但 yum/pip 等命令的使用也 ...
- shuffle 打乱一维数组
<?php $arr = range(,); print_r($arr); echo '<br />'; shuffle($arr); print_r($arr); ?> Ar ...
- laravel门面DB返回数组配置
在数据库配置文件中添加 'fetch' => PDO::FETCH_ASSOC, //但是这个配置好像是全局的,不能针对单个数据库连接进行配置 也可以在方法内使用php内置函数get_objec ...
- LODOP设置同一个任务发送到不同打印机
前面的博文Lodop打印语句最基本结构介绍(什么是一个任务),一个任务只能有一个打印语句(最后PRINT,PRINTA,PREVIEW等),如果执行多个,LODOP会弹出多次,C-LODOP会提示窗口 ...
- 【leetcode_easy】589. N-ary Tree Preorder Traversal
problem 589. N-ary Tree Preorder Traversal N叉树的前序遍历 首先复习一下树的4种遍历,前序.中序.后序和层序.其中,前序.中序和后序是根据根节点的顺序进行区 ...
- 用Inno setup制作以管理员权限启动的安装包
inno setup制作的安装包,默认是不需要管理员权限启动的.我们制作安装包,往往需要做一些设置工作,这些设置工作可能用到管理员权限.使用Resource Hacker修改inno setup资源, ...
- 关于React的脚手架
Rewire你的应用 https://ant.design/docs/react/use-with-create-react-app-cn create-react-app (官方脚手架 简称cra) ...
- 【牛客网】Finding Hotel
[牛客网]Finding Hotel 忘记K远点对的剪枝的我有点自闭 事实上我们只要先建一棵KD树出来,维护一下所在的矩形,和子树里的最小值 每次查询的时候如果最小值比查询的值要大的话就退出 当前的答 ...