Centos7下安装与卸载docker应用容器引擎
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
阅读目录:
1.Docker的安装
2.前提条件
3.(第一种)使用wget 命令进行下载rpm包
4.(第二种:推荐)使用存储库进行安装
5.升级 DOCKER CE
6.启动Docker进程
7.验证安装是否成功
8.最常用的几条命令
9.卸载docker
Docker的应用场景
Web 应用的自动化打包和发布。
自动化测试和持续集成、发布。
在服务型环境中部署和调整数据库或其他的后台应用。
- 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。
Docker的优点
- 1、简化程序:
Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,便可以实现虚拟化。Docker改变了虚拟化的方式,使开发者可以直接将自己的成果放入Docker中进行管理。方便快捷已经是 Docker的最大优势,过去需要用数天乃至数周的 任务,在Docker容器的处理下,只需要数秒就能完成。
- 2、避免选择恐惧症:
如果你有选择恐惧症,还是资深患者。Docker 帮你打包你的纠结!比如 Docker 镜像;Docker 镜像中包含了运行环境和配置,所以 Docker 可以简化部署多种应用实例工作。比如 Web 应用、后台应用、数据库应用、大数据应用比如 Hadoop 集群、消息队列等等都可以打包成一个镜像部署。
- 3、节省开支:
一方面,云计算时代到来,使开发者不必为了追求效果而配置高额的硬件,Docker 改变了高性能必然高价格的思维定势。Docker 与云的结合,让云空间得到更充分的利用。不仅解决了硬件管理的问题,也改变了虚拟化的方式。
1.Docker的安装:
Docker支持以下的CentOS版本:
- CentOS 7 (64-bit)
- CentOS 6.5 (64-bit) 或更高的版本
2.前提条件
目前,CentOS 仅发行版本中的内核支持 Docker。
Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。
Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。
我的操作系统版本:
您可以根据您的需要以不同的方式安装Docker CE,下面介绍两种安装方法:
- 一些用户下载 RPM 软件包并手动进行安装,然后完全由手动管理升级。在某些情况(例如,在不能访问互联网的隔离系统中安装 Docker)下,这很有用。
大多数用户设置Docker的存储库并从中进行安装,以便安装和升级任务。这是推荐的方法。
3.(第一种)使用wget 命令进行下载rpm包
docker官方包下载地址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
创建一个downloads文件夹,然后使用wget命令进行下载
[root@sungeek downloads]# wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm
[root@sungeek downloads]# yum install docker-ce-18.03.0.ce-1.el7.centos.x86_64.rpm
4.(第二种:推荐)使用存储库进行安装
首次在新主机上安装Docker CE之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker。
卸载旧版本
较旧版本的Docker被称为docker或docker-engine。如果已安装这些,请卸载它们以及相关的依赖项
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
4.1设置存储库
1.安装所需的包。yum-utils
提供了yum-config-manager
效用,并device-mapper-persistent-data
和lvm2
由需要devicemapper
存储驱动程序。
[root@sungeek ~]# yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2.使用以下命令设置stable 的存储库。即使您想从edge或test 存储库安装构建,也总是需要stable 的存储 库。
[root@sungeek ~]# yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3.(可选,我觉得还是稳定版好):启用edge和test存储库。这些存储库包含在docker.repo
上面的文件中,但默认情况下处于禁用状态。您可以将它们与稳定的存储库一起启用。
[root@sungeek ~]# yum-config-manager --enable docker-ce-edge
[root@sungeek ~]# yum-config-manager --enable docker-ce-test
您可以通过使用该标志运行命令来禁用edge或test存储库 。要重新启用它,请使用标志。以下命令禁用边缘存储库。yum-config-manager
--disable
--enable
[root@sungeek ~]# yum-config-manager --disable docker-ce-edge
- 注意:从Docker 17.06开始,稳定版本也被推到edge并test版本库。
4.2.更新 YUM 软件包索引。
[root@sungeek ~]# yum makecache fast
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: mirrors.shu.edu.cn
* updates: mirrors.shu.edu.cn
base | 3.6 kB ::
docker-ce-edge | 2.9 kB ::
docker-ce-stable | 2.9 kB ::
docker-ce-test | 2.9 kB ::
extras | 3.4 kB ::
updates | 3.4 kB ::
docker-ce-test/x86_64/primary_db | kB ::
Metadata Cache Created
如果这是自添加 Docker 镜像仓库以来您首次刷新软件包索引,系统将提示您接受 GPG 密钥,并且将显示此密钥的指纹。验证指纹是否正确,并且在正确的情况下接受此密钥。指纹应匹配 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
。
4.3.安装最新版本的 Docker CE,或者转至下一步以安装特定版本。
[root@sungeek ~]# yum install docker-ce
警告:如果您启用了多个 Docker 镜像仓库,进行安装 或者更新而不在
yum install
或yum update
命令中指定版本将始终安装可用的最高版本, 这可能无法满足您的稳定性需求。
在生产系统中,您应该安装特定版本的 Docker CE,而不是始终使用最新版本。列出可用版本。此示例使用 sort -r
命令按版本号(从最高到最低)对结果进行排序,并且已被截断。
注:此
yum list
命令仅显示二进制软件包。如果还需要显示 源软件包,请从软件包名称中省略.x86_64
。
[root@sungeek ~]# yum list docker-ce.x86_64 --showduplicates | sort -r
docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
返回的列表取决于启用了哪些存储库,并且特定于您的CentOS版本(.el7
在此示例中由后缀指示)。
例如,通过完全限定的软件包名称(它是软件包名称(docker-ce
))和版本字符串(第2列)直到第一个连字符来安装特定版本,并用连字符(-
) 分隔docker-ce-18.03.0.ce
[root@sungeek ~]# yum install docker-ce-<VERSION>
[root@sungeek ~]# yum install docker-ce-18.03.0.ce-1.el7.centos
5.升级 DOCKER CE
如需升级 Docker CE,首先运行yum makecache fast
,然后按照安装说明执行操作,并选择您要安装的新版本。
6.启动Docker进程
[root@localhost downloads]# systemctl start docker
[root@localhost downloads]# systemctl status docker
[root@localhost downloads]# systemctl enable docker --设置开机自启动docker服务
7.验证安装是否成功
直接输入docker列出该命令的用法
测试运行第一个容器:hello-world
由于本地没有hello-world这个镜像,所以会下载一个hello-world的镜像,并在容器内运行。
8.最常用的几条命令
8.1使用docker images查看镜像
[root@localhost downloads]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/hello-world latest e38bc07ac18e 2 months ago 1.85 kB
8.2使用docker ps -a 查看容器
[root@localhost downloads]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3fa4f2de1c01 hello-world "/hello" 4 minutes ago Exited (0) 4 minutes ago elastic_lumiere
docker ps也是最常用的命令,-a :显示所有的容器,包括未运行的。
8.3使用docker logs查看容器控制台输出
获取容器的日志
docker logs [container]
9.卸载docker
1.查询安装过的包
[root@sungeek ~]# yum list installed | grep docker
docker-client.x86_64 2:1.13.1-63.git94f4240.el7.centos @extras
docker-common.x86_64 2:1.13.1-63.git94f4240.el7.centos @extras
2.删除安装的软件包
[root@sungeek ~]# yum -y remove docker-client.x86_64
[root@sungeek ~]# yum -y remove docker-common.x86_64
3.主机上的镜像、容器、存储卷、或定制配置文件不会自动删除。如需删除所有镜像、容器和存储卷,请运行下列命令:
您必须手动删除任何已编辑的配置文件。
[root@sungeek ~]# rm -rf /var/lib/docker/
4.输入docker或docker --version验证是否卸载
[root@sungeek ~]# docker --version
-bash: /usr/bin/docker: No such file or directory
[root@sungeek ~]# docker
-bash: /usr/bin/docker: No such file or directory
5.导入加载进来觉得不合适可以使用 docker rm 容器ID 、 docker rmi 镜像ID 来删掉。
移除所有的容器和镜像:
[root@sungeek ~]# docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a)
centos7官方英文安装docker CE说明:https://docs.docker.com/install/linux/docker-ce/centos/
centos7中文安装docker CE说明:https://docs.docker-cn.com/engine/installation/linux/docker-ce/centos/
还有更多的命令可以参考docker命令大全:http://www.runoob.com/docker/docker-command-manual.html
Centos7下安装与卸载docker应用容器引擎的更多相关文章
- Centos7下安装与卸载Jdk1.8
安装 去官网下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 使用xs ...
- docker(一) Centos7下安装docker
docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...
- CentOS7下安装docker(Docker系列1)
CentOS7下安装docker 系统要求 为了安装docker,需要准备 64-bit的CentOS 7 删除非官方的Docker包 yum的仓库中有一个很旧的Docker包, 现在Docker官方 ...
- Docker学习之Centos7下安装
Docker学习之Centos7下安装 centos7 64下直接使用yum安装docker环境,步骤如下: 卸载旧版本docker sudo yum remove docker docker-com ...
- Docker学习笔记3:CentOS7下安装Docker-Compose
Docker-Compose是一个部署多个容器的简单但是非常必要的工具. 安装Docker-Compose之前,请先安装 python-pip,请参考我的另一篇博文CentOS7下安装python-p ...
- Centos7下PHP的卸载与安装nginx
Centos7下PHP的卸载与安装nginx CentOS上PHP完全卸载,想把PHP卸载干净,直接用yum的remove命令是不行的,需要查看有多少rpm包,然后按照依赖顺序逐一卸载. 1.首先查看 ...
- centos7下安装docker与镜像加速
1.背景 centos7下安装docker 2.安装 第一步:检查是否为centos7版本 第二步:依赖环境安装 执行如下两个命令: yum -y install gcc yum -y install ...
- CentOS7下安装MySQL并配置远程连接
一.CentOS7下安装MySQL数据库 CentOS7默认的安装包里面已经没有 MySQL-Server安装包了,远程镜像中也没有了. 默认的是MariaDB (MySQL的一个分支,开发这个分支的 ...
- CentOS7下安装NVIDIA独立显卡驱动出现X service error问题解决方法
问题症状: 最近在CentOS7下安装NVIDIA独立显卡驱动的过程中出现X service error问题,如下图所示: 解决方法: 0.到NVIDIA 官网上下载驱动文件(.run 格式) : N ...
随机推荐
- Django--自定义 Command 命令
Django 对于命令的添加有一套规范,你可以为每个app 指定命令.通俗一点讲,比如在使用manage.py文件执行命令的时候,可以自定制自己的命令,来实现命令的扩充. commands的创建 1. ...
- 从零开始学 Web 之 JS 高级(三)apply与call,bind,闭包和沙箱
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 前后端分离demo 旅馆管理系统
模型设计 旅馆管理系统,主要涉及到登记入住,退房以及客房和客人信息管理:经过分析抽像出涉及到的实体以及各实体之间的关系: 可以看出整个业务以客房为中心,入住,退房,定价,收费都是以客房为基本单 ...
- Redis持久化存储与复制功能简述
一.分布式系统基础理论 分布式系统的两个基础理论: 1.CAP理论 如图: Consistency(强一致性):数据一致更新,所有数据变动都是同步的.Availability(可用性):好的响应性能. ...
- oracle用户权限
权限: create session create table unlimited tablespace connect resource dba 例: #sqlplus /nolog SQL> ...
- angularjs学习第五天笔记(第二篇:表单验证升级篇)
您好,我是一名后端开发工程师,由于工作需要,现在系统的从0开始学习前端js框架之angular,每天把学习的一些心得分享出来,如果有什么说的不对的地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家的点 ...
- T-SQL:排除阻塞(十六)
当一个事务持有事务的资源锁,并且另一个事务请求同一资源的不兼容锁时,请求被阻塞并且请求者进入等待状态,直到锁定者释放干扰锁. 长时间运行事务会导致锁被长时间持有,所以只对要开启事务的表操作代码开启事务 ...
- ASP.NET Identity 三(转载)
转载来源:http://www.cnblogs.com/r01cn/p/5194257.html 注:本文是[ASP.NET Identity系列教程]的第三篇.本系列教程详细.完整.深入地介绍了微软 ...
- [android] notification入门
通知栏,对话框,Toast是我们接触的三个提示框,通知栏是在系统的应用com.adnroid.systemui当中的 接触的几个Manger,getSystemService()方法得到的,参数: A ...
- 【Tomcat】压力测试和优化
一.采用jmeter进行测试 为什么使用jmeter, 它免费开源, 不断发展, 功能逐渐强大. 可以做功能,负载, 性能测试.一套脚本可以同时用于功能和性能测试.Jmeter 有着众多的插件开发者, ...