docker探索-在centos7中安裝docker及問題處理(二)

參考(包含其它系統方法):https://www.runoob.com/docker/centos-docker-install.html

推薦中文教程:菜鳥教程 https://www.runoob.com/docker/

主要講一下使用腳本安裝 Docker

1、使用 sudo 或 root 權限登錄 Centos。

2、確保 yum 包更新到最新。

$ sudo yum update

3、執行 Docker 安裝腳本。

$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh

執行這個腳本會添加 docker.repo 源並安裝 Docker。

4、啓動 Docker 進程。

sudo systemctl start docker

5、驗證 docker 是否安裝成功並在容器中執行一個測試的鏡像。

$ sudo docker run hello-world
docker ps

到此,Docker 在 CentOS 系統的安裝完成。

6、設置docker開機自啓動

#chkconfig docker on

鏡像加速

鑑於國內網絡問題,後續拉取 Docker 鏡像十分緩慢,我們可以需要配置加速器來解決,我使用的是網易的鏡像地址:http://hub-mirror.c.163.com。

新版的 Docker 使用 /etc/docker/daemon.json(Linux) 或者 %programdata%\docker\config\daemon.json(Windows) 來配置 Daemon。

請在該配置文件中加入(沒有該文件的話,請先建一個):

{
  "registry-mirrors": ["http://hub-mirror.c.163.com"]
}

問題一: 

# docker info

WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

解決:

# vim /etc/sysctl.conf 

在文件後面添加

net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1

# sysctl -p

問題二:

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

解決:

# yum update
# yum install docker
# systemctl start docker

問題三:

錯誤:docker-ce conflicts with 2:docker-1.13.1-96.gitb2f74b2.el7.centos.x86_64
錯誤:docker-ce-cli conflicts with 2:docker-1.13.1-96.gitb2f74b2.el7.centos.x86_64
 您可以嘗試添加 --skip-broken 選項來解決該問題
** 發現 22 個已存在的 RPM 數據庫問題, 'yum check' 輸出如下:
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(__init_waitqueue_head) = ('0', '0xffc7c184', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(__kmalloc) = ('0', '0x5a34a45c', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(__tracepoint_kmalloc) = ('0', '0x105e2727', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(complete) = ('0', '0xe456bd3a', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(dev_get_drvdata) = ('0', '0x0a92a43c', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(dev_set_drvdata) = ('0', '0xd2037915', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(hid_add_device) = ('0', '0x4df68586', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(hid_allocate_device) = ('0', '0xa3de9250', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(hid_connect) = ('0', '0x89fc9206', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(hid_destroy_device) = ('0', '0x12bcff7d', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(hid_disconnect) = ('0', '0x9d585f8f', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(hid_input_report) = ('0', '0xd836dd38', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(hid_parse_report) = ('0', '0x564e2f50', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(kmem_cache_alloc_notrace) = ('0', '0xf85ccdae', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(kmemdup) = ('0', '0x8b7fe311', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(malloc_sizes) = ('0', '0xd691cba2', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(mcount) = ('0', '0xb4390f9a', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(memcpy) = ('0', '0x236c8c64', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(module_layout) = ('0', '0x14522340', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(printk) = ('0', '0xea147363', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(slab_buffer_size) = ('0', '0xfa2e111f', None)
kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64 有缺少的需求 kernel(wait_for_completion_timeout) = ('0', '0x3e1f073d', None)

解決:

# yum -y remove kmod-microsoft-hyper-v microsoft-hyper-v

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章