【docker】——CentOS7.0安装docker以及docker命令

简介: 在CentOS中,老版本Docker名称是docker 或docker-engine ,而Docker CE的软件包名称是docker-ce 。因此,如已安装过老版本的Docker,需使用如下命令卸载。

##2.1 CentOS


2.1.1 系统要求


CentOS 7或更高版本

centos-extras 仓库必须处于启用状态,该仓库默认启用,但如果您禁用了该仓库,请按照https://wiki.centos.org/AdditionalResources/Repositories 中的描述重新启用。

建议使用overlay2 存储驱动


2.1.2 yum安装


2.1.2.1 卸载老版本的Docker


在CentOS中,老版本Docker名称是docker 或docker-engine ,而Docker CE的软件包名称是docker-ce 。因此,如已安装过老版本的Docker,需使用如下命令卸载。


sudo yum remove docker \
                  docker-common \
                  docker-selinux \
                  docker-engine


需要注意的是,执行该命令只会卸载Docker本身,而不会删除Docker存储的文件,例如镜像、容器、卷以及网络文件等。这些文件保存在/var/lib/docker 目录中,需要手动删除。


2.1.2.2 安装仓库


执行以下命令,安装Docker所需的包。其中,yum-utils 提供了yum-config-manager 工具;device-mapper-persistent-data 及 lvm2 则是devicemapper 存储驱动所需的包。


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


执行如下命令,安装stable 仓库。必须安装stable 仓库,即使你想安装edge 或test 仓库中的Docker构建版本。


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


[可选] 执行如下命令,启用edge 及test 仓库。edge/test仓库其实也包含在了docker.repo 文件中,但默认是禁用的,可使用以下命令来启用。


sudo yum-config-manager --enable docker-ce-edge    # 启用edge仓库
sudo yum-config-manager --enable docker-ce-test    # 启用test仓库


如需再次禁用,可加上--disable 标签。例如,执行如下命令即可禁用edge仓库。


sudo yum-config-manager --disable docker-ce-edge


TIPS:从Docker 17.06起,stable版本也会发布到edge以及test仓库中。


2.1.2.3 安装Docker CE


执行以下命令,更新yum的包索引


sudo yum makecache fast


执行如下命令即可安装最新版本的Docker CE


sudo yum install docker-ce


在生产环境中,可能需要指定想要安装的版本,此时可使用如下命令列出当前可用的Docker版本。


yum list docker-ce.x86_64  --showduplicates | sort -r


这样,列出版本后,可使用如下命令,安装想要安装的Docker CE版本。


sudo yum install docker-ce-<VERSION>


启动Docker


sudo systemctl start docker


验证安装是否正确。


sudo docker run hello-world


这样,Docker将会下载测试镜像,并使用该镜像启动一个容器。如能够看到类似如下的输出,则说明安装成功。


Unable to find image 'hello-world:latest' locally

latest: Pulling from library/hello-world

b04784fba78d: Pull complete

Digest: sha256:f3b3b28a45160805bb16542c9531888519430e9e6d6ffc09d72261b0d26ff74f

Status: Downloaded newer image for hello-world:latest

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.

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://cloud.docker.com/

For more examples and ideas, visit:

https://docs.docker.com/engine/userguide/


2.1.2.4 升级Docker CE


如需升级Docker CE,只需执行如下命令:


sudo yum makecache fast

然后按照安装Docker的步骤,即可升级Docker。


2.1.2.5 参考文档


CentOS 7安装Docker官方文档https://docs.docker.com/engine/installation/linux/docker-ce/centos/ ,文档中还讲解了在CentOS 7中安装Docker CE的其他方式,本文不作赘述。


2.1.3 shell一键安装


curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh


搞定一切。


2.1.4 加速下载


2.1.4.1 获取加速地址教程:


首先进入阿里云docker库首页 https://dev.aliyun.com/

点击管理中心:


20180309144523721.png


点击加速器:


20180309144535502.png


复制加速地址;


20180309144545377.png


2.1.4.2 加速下载配置


针对Docker客户端版本大于1.10的用户


您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器:


sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["你的专属加速地址"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker


2.1.5 docker常用命令


docker search java #搜索存放在docker hub中的镜像


docker pull java  #从docker registry上下载镜像


docker pull reg.itmuch.com/java:7 #指定的docker registry中下载标签为7的java镜像


docker images     #列出已经下载的镜像


docker rmi hello-world #删除hello-world的镜像


docker rmi -f $(docker images) #强制删除所有docker镜像


docker run java /bin/echo 'hello world' #终端会打印hello world字样,跟本地执行/bin/echo 'hello world' 一样


docker run -d -p 91:80 nginx #启动一个开放端口80到宿主机端口91的nginx容器


docker ps #列出运行中的容器


docker stop 784fd3b #停止容器id为784fd3b的容器


docker kill 784fd3b #强制停止容器


docker run 784fd3b #启动已经停止的容器


docker restart 784fd3b #重启容器(先执行了stop再执行了start)


docker attach 784fd3b #进入容器(不方便,多个窗口同时attach到同一个容器时所有窗口都会同步显示)


nsenter  进入容器操作:

   1. docker ps #获得CONTAINER ID

   2. docker inspect --format "{{.State.Pid}}" CONTAINER ID #获得PID

   3. nsenter --target PID --mount --uts --ipc --net --pid


docker rm 784fd3b #删除指定容器(未启动的容器)


docker rm -f 784fd3b #强制删除启动容器


docker rm -f $(docker ps -a -q) #强制删除所有容器


2.1.6 本文摘自


   1.周立博文:http://www.itmuch.com/docker/02-docker-install/

   2.博客园博文: https://www.cnblogs.com/zhxshseu/p/5970a5a763c8fe2b01cd2eb63a8622b2.html

   3.《Spring Cloud与Docker微服务架构实战》第12章

相关文章
|
19天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
20天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
27天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
77 3
|
28天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
50 2
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
87 2
|
1月前
|
Prometheus 监控 Cloud Native
基于Docker安装Grafana和Prometheus
Grafana 是一款用 Go 语言开发的开源数据可视化工具,支持数据监控和统计,并具备告警功能。通过 Docker 部署 Grafana 和 Prometheus,可实现系统数据的采集、展示和告警。默认登录用户名和密码均为 admin。配置 Prometheus 数据源后,可导入主机监控模板(ID 8919)进行数据展示。
73 2
|
16天前
|
存储 安全 Linux
VMware安装CentOS7
【11月更文挑战第11天】本文详细介绍了在 VMware 中安装 CentOS 7 的步骤,包括准备工作、创建虚拟机、配置虚拟机硬件和安装 CentOS 7。具体步骤涵盖下载 CentOS 7 镜像文件、安装 VMware 软件、创建和配置虚拟机硬件、启动虚拟机并进行安装设置,最终完成 CentOS 7 的安装。在安装过程中,需注意合理设置磁盘分区、软件选择和网络配置,以确保系统的性能和功能满足需求。
121 0
|
20天前
|
Docker 容器
【赵渝强老师】使用二进制包方式安装Docker
本文介绍了在企业生产环境中无法直接访问外网时,如何使用Docker官方提供的二进制包进行Docker的离线安装。文章详细列出了从安装wget、下载Docker安装包、解压、复制命令到启动Docker服务的具体步骤,并提供了相关命令和示例图片。最后,还介绍了如何设置Docker为开机自启模式。
|
20天前
|
缓存 Ubuntu Linux
如何安装Docker
如何安装Docker
104 0
|
7月前
|
缓存 关系型数据库 MySQL
百度搜索:蓝易云【CentOS8服务器安装MySQL报错:no match mysql-community-server】
现在,你已经成功安装了MySQL服务器并解决了"no match mysql-community-server"的报错问题。祝你使用愉快!
104 1