Linux安装Docker的二种方法

Linux安装Docker的二种方法

安装docer容器
一键安装命令:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

报错

# Executing docker install script, commit: 4f282167c425347a931ccfd95cc91fab041d414f
+ sh -c 'yum install -y -q yum-utils'
软件包 yum-utils-1.1.31-54.el7_8.noarch 已安装并且是最新版本
+ sh -c 'yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo'
  File "/usr/bin/yum-config-manager", line 135
    except yum.Errors.RepoError, e:
                               ^
SyntaxError: invalid syntax

image.png

如何让编辑器展示行数。在非编辑状态下,输入**:set number**,用来展示行数

image.png

进入错误地方查看,发现没有问题,可能是版本最新版本的原因导致的

遇到这个错误是因为我升级了Python到3,但是yum-config-manager这个文件头的Python没有改成Python2,如下:

image.png

 vim /usr/bin/yum-config-manager

image.png

image.png

改好后面,再一键安装了

设置开机自启并启动docker

systemctl enable docker.service
systemctl start docker.service

测试

docker --version
sudo docker run hello-world

配置镜像加速
Docker 从 Docker Hub 拉取镜像,因为是从国外获取,所以速度较慢
可以通过配置国内镜像源的方式,从国内获取镜像,提高拉取速度。

创建/打开daemon.json文件

vim /etc/docker/daemon.json

输入以下下内容并保存

{
	"registry-mirrors": ["http://hub-mirror.c.163.com",
	"https://docker.mirrors.ustc.edu.cn"]
}

重新加载配置信息及重启 Docker 服务

重新加载某个服务的配置文件
# 重新加载某个服务的配置文件
sudo systemctl daemon-reload
# 重新启动 docker
sudo systemctl restart docker
重新启动 docker
sudo systemctl restart docker

此时pull镜像就很快啦

下面用另外一种方式安装docker,不用一键安装了的方式了

Docker手动安装

手动安装Docker分三步:卸载、设置仓库、安装。

卸载Docker(可选)
第一步,卸载历史版本。这一步是可选的,如果之前安装过旧版本的Docker,可以使用如下命令进行卸载:

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine \
                  docker-ce

image.png

设置源仓库
第二步,设置仓库。新主机上首次安装Docker Engine-Community之前,需要设置Docker仓库。此后可从仓库安装和更新Docker。

在设置仓库之前,需先按照所需的软件包。yum-utils提供了yum-config-manager,并且device mapper存储驱动程序需要device-mapper-persistent-data和lvm2。

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

image.png

执行上述命令,安装完毕即可进行仓库的设置。使用官方源地址设置命令如下:

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

设置镜像源仓库的时候,发现出现报错

File "/bin/yum-config-manager", line 135 except yum.Errors.RepoError, e:

遇到这个错误是因为我升级了Python到3,但是yum-config-manager这个文件头的Python没有改成Python2,如下:

image.png

 vim /usr/bin/yum-config-manager

image.png

image.png

执行上述命令,安装完毕即可进行仓库的设置。使用官方源地址设置命令如下:u

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

image.png

Docker安装
执行一下命令,安装最新版本的 Docker Engine-Community 和 containerd。

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

image.png

docker-ce为社区免费版本。稍等片刻,docker即可安装成功。但安装完成之后的默认是未启动的,需要进行启动操作。

如果不需要docker-ce-cli或containerd.io可直接执行如下命令:

yum install -y docker-ce

至此,完成Docker安装。

image.png

Docker启动
启动Docker的命令:

sudo systemctl start docker

image.png

通过运行hello-world镜像来验证是否正确安装了Docker Engine-Community。

// 拉取镜像
sudo docker pull hello-world
// 执行hello-world
sudo docker run hello-world

image.png

如果执行之后,控制台显示如下信息,则说明Docker安装和启动成功:

docker run hello-world

image.png

除了启动Docker,一些其他启动相关的命令:

守护进程重启:systemctl daemon-reload
重启Docker服务:systemctl restart docker / service docker restart
关闭Docker服务:docker service docker stop / docker systemctl stop docker

删除Docker
删除安装包:

yum remove docker-ce

删除镜像、容器、配置文件等内容:

rm -rf /var/lib/docker

搜索仓库镜像:docker search 镜像名
拉取镜像:docker pull 镜像名
查看正在运行的容器:docker ps
查看所有容器:docker ps -a
删除容器:docker rm container_id
查看镜像:docker images
删除镜像:docker rmi image_id
启动(停止的)容器:docker start 容器ID
停止容器:docker stop 容器ID
重启容器:docker restart 容器ID
启动(新)容器:docker run -it ubuntu /bin/bash
进入容器:docker attach 容器ID或docker exec -it 容器ID /bin/bash,推荐使用后者。
更多的命令可以通过docker help命令来查看。


版权声明:本文为Deng872347348原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。