CentOS7安装docker

2023-05-16

安装docker

docker官网:http://www.docker.com
docker中文网站:https://www.docker.com/
仓库
Docker Hub官网: https://hub.docker.com/

官网文档地址

1、安装所需的软件包。

yum-utils提供了yum-config-manager 效用,并device-mapper-persistent-data和lvm2由需要 devicemapper存储驱动程序。

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

2、使用以下命令来设置稳定的存储库

$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

也可以设置为阿里云的镜像

sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装

1、安装最新版本的Docker Engine-Community和containerd

sudo yum install docker-ce docker-ce-cli containerd.io

2、安装特定版本:
要安装特定版本的Docker Engine-Community,请在存储库中列出可用版本,然后选择并安装:
一种。列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序,并被截断:

$ yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64  3:18.09.1-3.el7                     docker-ce-stable
docker-ce.x86_64  3:18.09.0-3.el7                     docker-ce-stable
docker-ce.x86_64  18.06.1.ce-3.el7                    docker-ce-stable
docker-ce.x86_64  18.06.0.ce-3.el7                    docker-ce-stable

返回的列表取决于启用了哪些存储库,并且特定于您的CentOS版本(.el7在本示例中以后缀表示)。

b。通过其完全合格的软件包名称安装特定版本,该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔。例如,docker-ce-18.09.1。

$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

启动运行

启动docker

$ sudo systemctl start docker

通过运行hello-world 映像来验证是否正确安装了Docker Engine-Community
这个命令会下载一个镜像并运行这个镜像为一个容器,当容器运行之后将打印镜像信息。

$ sudo docker run hello-world

从软件包安装

如果您不能使用Docker的存储库来安装Docker,则可以下载该.rpm版本的 文件并手动安装。每次要升级Docker Engine-Community时,都需要下载一个新文件。
1、下载
转到 https://download.docker.com/linux/centos/7/x86_64/stable/Packages/ 并下载.rpm要安装的Docker版本的文件。
在这里插入图片描述
注意:要安装 nightly 或 test(预发布)软件包,请将上述URL中的stable单词更改为nightly或test。
2、安装Docker Engine-Community,将下面的路径更改为您下载Docker软件包的路径。

$ sudo yum install /path/to/package.rpm

(可选)Docker已安装但尚未启动。docker创建该组,但没有用户添加到该组。可以创建用户并添加到docker组。
3、启动Docker。

$ sudo systemctl start docker

4、测试。通过运行hello-world 映像来验证是否正确安装了Docker Engine-Community 。

$ sudo docker run hello-world

常用命令&操作

查看所有命令https://docs.docker.com/engine/reference/commandline/docker/

操作命令说明
检索docker search 关键字 eg:docker search tomcat去仓库中检索镜像信息
拉取docker pull (镜像名:tag)tag是可选参数,为软件的版本,默认是最新的
列表docker images查找所有本地镜像
删除docker rmi image-id删除指定的本地镜像
创建启动一个做端口映射的容器docker run --name myTomcat -d -p 8888:8080 imageName:tag-d:后台运行 -p:端口映射 --name:自定义的容器名
查看运行中的容器docker ps
停止运行中的容器docker stop 容器的id
启动容器docker start 容器的id
查看所有的容器docker ps -a
删除一个容器docker rm 容器id
进入到容器内部docker exec -it 6b654059476e /bin/bash-it参数后面是容器的id

案例

在这里插入图片描述
查看容器列表

[root@localhost xinetd.d]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
12baee14dfd1        tomcat:latest       "catalina.sh run"   About an hour ago   Up 35 minutes       0.0.0.0:8080->8080/tcp   tomcat8080
[root@localhost xinetd.d]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
12baee14dfd1        tomcat:latest       "catalina.sh run"   About an hour ago   Up 35 minutes       0.0.0.0:8080->8080/tcp   tomcat8080

启动容器

[root@localhost xinetd.d]# docker start 12baee14dfd1
12baee14dfd1

在这里插入图片描述

可能出现的问题

[root@localhost xinetd.d]# docker run --name tomcat02 -d -p 8081:8080 tomcat:latest
9589ee957b5edf6d093fe033a5d3268a3098f4eecf8dc7e4547f725bc03aff9a
docker: Error response from daemon: driver failed programming external connectivity on endpoint tomcat02 (8ea1d066f081004b64f921ed733e2947b8494e33655f2a82cb85eef065ed49a3):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8081 -j DNAT --to-destination 172.17.0.3:8080 ! -i docker0: iptables: No chain/target/match by that name.
 (exit status 1)).
[root@localhost xinetd.d]# docker run --name tomcat02 -d -p 8081:8080 tomcat:latest
9589ee957b5edf6d093fe033a5d3268a3098f4eecf8dc7e4547f725bc03aff9a
docker: Error response from daemon: driver failed programming external connectivity on endpoint tomcat02 (8ea1d066f081004b64f921ed733e2947b8494e33655f2a82cb85eef065ed49a3):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8081 -j DNAT --to-destination 172.17.0.3:8080 ! -i docker0: iptables: No chain/target/match by that name.
 (exit status 1)).
  • 解释
    docker服务启动时定义的自定义链DOCKER由于 centos7 firewall 被清掉
    firewall的底层是使用iptables进行数据过滤,建立在iptables之上,这可能会与 Docker 产生冲突。
    当 firewalld 启动或者重启的时候,将会从 iptables 中移除 DOCKER 的规则,从而影响了 Docker 的正常工作。
    当你使用的是 Systemd 的时候, firewalld 会在 Docker 之前启动,但是如果你在 Docker 启动之后再启动 或者重启 firewalld ,你就需要重启 Docker 进程了。
    重启docker服务即可重新生成自定义链DOCKER
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CentOS7安装docker 的相关文章

随机推荐

  • Mac Tomcat安装 localhost 拒绝了我们的连接请求

    Mac Tomcat安装 localhost 拒绝了我们的连接请求 Mac下安装Tomcat服务器 xff0c 下载的Tomcat10 在bin目录下 xff0c 授权 chmod 777 sh 启动Tomcat服务 startup sh
  • 从SAP最佳业务实践看企业管理(83)-PP-145按库存生产

    xfeff xfeff 从SAP 最佳业务实践看企业管理 83 PP 145 按库存生产 1 MTS 按库存生产 在按库存生产策略的类型中 xff0c 客户基本上对最终产品规格的确定没有什么建议或要求 xff0c 他们的投入很少 生产商生产
  • Jenkins学习笔记:解决插件安装问题

    安装插件结束后 xff0c 当时界面提示很多插件没有成功 xff0c 问我是否需要重试 xff0c 我安排到后面再做解决 今天打开Jenkins后 xff0c 发现之前的密码不能登录了 xff0c 仔细想了想 xff0c 记起之前改过了 用
  • Tensorflow lite for 移动端安卓开发(二)——完整详细过程训练自己的模型

    官方给的Tensorflow lite demo是ImageNet 中训练的1000类物体识别 xff0c 基于移动端的项目需要 xff0c 现在要用模型训练自己的数据 xff0c 提供两种训练方法 xff0c 这也是自己在摸索Tensor
  • 亚马逊,一个沉睡广告巨人的苏醒(虎嗅网)

    虽然拥有令无数广告主羡慕的高质量用户数据和巨大的网站流量 xff0c 但是在很长的一段时间内亚马逊还是将主要的精力集中在商品销售上 xff0c 广告只是作为自身业务的补充可有可无的存在 不过最近两年 xff0c 亚马逊对广告这种不屑的态度正
  • 大数据案例分析:电信业Hadoop应用分析 原文出自【比特网】,转载请保留原文链接:http://do.chinabyte.com/228/12410228.shtml

    电信业Hadoop应用分析 昨日 xff0c 联通研究院处长王志军在第七届 开源中国 开源世界 高峰论坛上分享了Hadoop在电信行业大数据应用的经验 随着国内3G网络的发展 xff0c 或者移动通信网络的发展 xff0c 中国联通 600
  • 大腕出手看门道,谈BAT的投资战略差异 三家战略投资的思考原点并不相同虎嗅网)

    中国互联网的收购之战 xff0c 比娱乐圈的明星离婚更一波三折和猜不透结局 当所有人以为搜狗被360牵回山寨只是早晚的事的时候 xff0c 搜狗和腾讯宣布好上了 眼瞅着今年第三季度即将结束 xff0c 中国互联网巨头们在2013年的 军备竞
  • JDK6的安装

    http www java net download jdk6 6u10 promoted b32 binaries jdk 6u10 rc2 bin b32 windows i586 p 12 sep 2008 exe XP 下 JDK6
  • 如何利用大数据进行价值兑现才是正经事(虎嗅网)

    如果有一天你可以预测未来 xff0c 你要做的第一件事情是什么 xff1f 买彩票 xff1f 第二件 第三件事情呢 xff1f 先卖个关子 xff0c 我们后面再说这件事情 大数据是个产业 xff0c 广义上指的是在这个信息过载时代围绕着
  • 络达开发---串口日志&日志过滤

    平台 xff1a AB1565M SDK版本 xff1a V2 11 0 开发环境 xff1a windows10 采用官方ATK中的日志工具可以通过硬件物理串口来实时查看芯片中软件的运行日志 如下图所示 xff0c 其实该ATK工具为一若
  • 多图震撼!数字的未来,2013报告(虎嗅网)

    新媒体 完爆 旧媒体 从市值上来看 xff0c 以苹果 谷歌 亚马逊 Facebook 雅虎等为首的新媒体公司市值已超过1万亿美元 xff0c 而以迪斯尼 Comcast 时代华纳 Viacom CBS 新闻集团 21世纪福克斯等为首的旧媒
  • 网页采集器-八爪鱼采集器

    八爪鱼采集器下载地址 xff1a http www bazhuayu cc download 八爪鱼采集器的注册地址 xff1a http www bazhuayu cc signup id 61 0e492e9c 6d80 4c2a a2
  • 考研书单与技巧

    书尽量在网上搞活动时买正版的 xff0c 这样也不贵 每科研究透一到两本书 xff0c 不要贪多 xff01 1 英语 xff1a xff08 积累的过程 xff0c 可以现在开始 xff0c 正好把六级过了 xff09 xff08 看好所
  • Tomcat 9安装配置教程

    首先 xff0c 先去这个网址下载Tomcat 9 http tomcat apache org 然后根据自己的电脑系统版本去下载相对应的文件 xff01 我的系统版本是 Windows 10 64位 xff0c 所以我选择 34 64 b
  • Ef Core 使用Entity方式配置外键

    一 Ef Core 使用Entry方式配置外键 当一个表中有多个外键指向同一个表时候 xff0c 需要使用Entity方式执行具体外键约束名称 xff0c 使用方法如下 xff1a protected override void OnMod
  • Python安装后目录在哪儿_如何查看Python的安装目录

    一 Python的安装录 当前安装版本为 xff1a python 3 10 4 1 在安装python的时候可以看到安装目录 xff0c 可以修改安装目录 xff1a 2 windows系统下64位安装目录如下 xff1a 跟其他软件不太
  • linux下完全删除mysql

    linux下完全删除mysql 查询所有mysql的服务并停止所有mysql服务 查询自启服务列表 span class token function chkconfig span list 执行结果 mysqld 0 关闭 1 关闭 2
  • linux安装mysql-8.0.19-最全讲解

    linux离线方式安装mysql 8 0 19 下载mysql包 注意 在MySQL Server 8 0 12中 xff0c 压缩算法从Gzip更改为XZ xff1b 并且通用二进制文件的文件扩展名从 tar gz更改为 tar xz 安
  • Windows环境下给oracle打补丁详细教程

    环境检查 1 检查oracle数据库版本 xff0c 安装前检查 xff1a 确保Oracle数据库安装与您正在应用此修补程序的版本相同 C WINDOWS system32 span class token operator gt spa
  • CentOS7安装docker

    安装docker docker官网 xff1a http www docker com docker中文网站 xff1a https www docker com 仓库 Docker Hub官网 https hub docker com 官