原文地址:http://www.eussi.top/view/20

Docker安装教程网上很多,安装docker可自行网上查询即可。这里主要罗列一下我在docker安装过程中会遇到一些错误:

1、CentOS7中安装过程中启动报错

使用

systemctl start docker

命令启动报错如下:

Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.

使用

systemctl status docker

命令查看状态如下:

在这里插入图片描述

解决方案

vi /etc/sysconfig/docker

修改

OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false'

OPTIONS='--selinux-enabled=false --log-driver=journald --signature-verification=false'

重新启动即可:

systemctl start docker

2、CentOS7中启动镜像报错

Error response from daemon: error creating overlay mount to /var/lib/docker/overlay2

解决方案

vi /etc/sysconfig/docker-storage

修改

DOCKER_STORAGE_OPTIONS=

DOCKER_STORAGE_OPTIONS="--storage-driver overlay"

重启即可

3、CentOS7中启动镜像报错

/usr/bin/docker-current: Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "write parent: broken pipe".

由于使用的是3.10 版本的内核,可能无法正常运行 18.06.x 及以上版本的 docker(解决方法:升级内核或者降低 docker 版本)

解决方案
# 更新到最新 yum 包
yum update -y

# 卸载旧版本(如果安装过旧版本的话)
yum remove docker docker-common docker-selinux docker-engine docer-io

# 安装需要的软件包
# yum-util 提供 yum-config-manager 功能, 另外两个是 devicemapper 驱动依赖
yum install -y yum-utils device-mapper-persistent-data lvm2

# 设置 yum 源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 查看所有仓库中所有 docker 版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r

# 由于 repo 中默认只开启 stable 的仓库,故这里安装的是最新稳定版(18.09.2)
# 由于内核是 3.10 无法正常运行 18.06.x 及以上版本的 docker,所以不这么安装
# yum install -y docker-ce

# 经过测试发现,3.10 内核可以运行 18.03.1.ce
# yum install -y <FQPN>
yum install -y docker-ce-18.03.1.ce

# 启动并加入开机启动
systemctl start docker
systemctl enable docker

# 验证安装是否成功(有 client 和 service 两部分表示 docker 安装启动都成功了)
docker version

下载过程中,从镜像中下载速度非常慢,于是采用将依赖包直接下载下来就行安装
可以通过此链接下载:https://pan.baidu.com/s/1EqH3sSzf_jCled8sYV-EHg 提取码: jygu

# 可能需要更新libseccomp
yum -y install libseccomp

#可能需要更新selinux-policy
yum  -y install selinux-policy

# 安装
rpm -ivh container-selinux-2.9-4.el7.noarch.rpm
rpm -ivh pigz-2.3.4-1.el7.x86_64.rpm
rpm -ivh docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm

#启动 并开机启动
systemctl start docker
systemctl enable docker

#接下来便可以运行一个容器了
docker run -i -t centos /bin/bash

4、windows10家庭版安装

Docker Desktop requires Windows 10 Pro or Enterprise version 14393 to run.

官网下载时忽略了说明,windows10家庭版无法安装docker,需要下载docker toolbox安装,如下:

Get Docker Desktop for Windows
Docker Desktop for Windows is available for free.
Requires Microsoft Windows 10 Professional or Enterprise 64-bit. For previous versions get Docker Toolbox.
By downloading this, you agree to the terms of the Docker Software End User License Agreement and the Docker Data Processing Agreement (DPA).
解决方案

下载docker toolbox安装

5、安装docker toolbox后找不到vboxmanage.exe

解决方案

首先检查环境变量

VBOX_MSI_INSTALL_PATH

配置路径下是否包含该exe文件,注意斜杠结尾,如

C:\Program Files\Oracle\VirtualBox\

然后启动Docker Quickstart Terminal时使用管理员身份运行即可

6、VMware中CentOS7挂起或者重启后无法联网

安装好docker-ce-18.03.1.ce后虚拟机挂起或者重启后无法联网,通过ifconfig命令查看发现eno16777736的网卡并未加载,使用systemctl restart network重启报错

Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.

解决方案

通过journalctl -xe查看日志发现大致是因为加载ifcfg-eno16777736文件失败,但是为什么加载不到,还处于未知状态。

目前从网上看到的仅仅是临时解决方案,如下:

此方案需要每次开机后设置,不能永久生效。因为是没有读取eno16777736的配置文件,所以使用手工设置生效,如果觉得麻烦,可以通过开机启动脚本设置达到目的。

根据ifcfg-eno16777736文件的原配置情况,设置如下内容:

1.设置IP

ifconfig eno16777736 192.168.198.201

2.增加默认网关

route add default gw 192.168.198.2

此时设置到现在,可以通过IP访问外网,但是无法通过域名访问

3.添加nameserver

vi /etc/resolv.conf

设置以下内容:

#Generated by NetworkManager nameserver 192.168.198.2

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐