Ubuntu 16.04 And CentOS 7 Install Docker

Ubuntu Install Docker

1.系統要求

64bit操作系統,內核版本至少爲3.10。

爲了讓Docker使用AUFS存儲,推薦安裝linux-image-extra。CentOS使用的是DeviceMapper.
$ sudo apt-get install -y linux-image-extra-$(uname -r)
執行以上安裝命令,報錯如下:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
linux-image-extra-4.10.0-32-generic is already the newest version (4.10.0-32.36~16.04.1).
The following packages were automatically installed and are no longer required:
  linux-headers-4.8.0-36 linux-headers-4.8.0-36-generic linux-image-4.8.0-36-generic linux-image-extra-4.8.0-36-generic
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 178 not upgraded.
3 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up linux-image-extra-4.10.0-32-generic (4.10.0-32.36~16.04.1) ...
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.10.0-32-generic /boot/vmlinuz-4.10.0-32-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.10.0-32-generic /boot/vmlinuz-4.10.0-32-generic
update-initramfs: Generating /boot/initrd.img-4.10.0-32-generic
W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_01.bin for module i915

gzip: stdout: No space left on device
E: mkinitramfs failure find 141 cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-4.10.0-32-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
dpkg: error processing package linux-image-extra-4.10.0-32-generic (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of linux-image-generic-hwe-16.04:
 linux-image-generic-hwe-16.04 depends on linux-image-extra-4.10.0-32-generic; however:
  Package linux-image-extra-4.10.0-32-generic is not configured yet.

dpkg: error processing package linux-image-generic-hwe-16.04 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-generic-hwe-16.04:
 linux-generic-hwe-16.04 depends on linux-image-generic-hwe-16.04 (= 4.10.0.32.34); however:
  Package linux-image-generic-hwe-16.04 is not configured yet.

dpkg: error processing package linux-generic-hwe-16.04 (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
                                                                                                          No apport report written because the error message indicates its a followup error from a previous failure.
                                       Errors were encountered while processing:
 linux-image-extra-4.10.0-32-generic
 linux-image-generic-hwe-16.04
 linux-generic-hwe-16.04
E: Sub-process /usr/bin/dpkg returned an error code (1)

解決方法:
$ sudo ap-get autoremove

然後重新執行安裝命令:

$ sudo apt-get install -y linux-image-extra-$(uname -r)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
linux-image-extra-4.10.0-32-generic is already the newest version (4.10.0-32.36~16.04.1).
0 upgraded, 0 newly installed, 0 to remove and 178 not upgraded.

2.添加鏡像源

首先安裝apt-transport-https包以支持HTTPS協議:

$ sudo apt-get install -y apt-transport-https
Reading package lists... Done
Building dependency tree       
Reading state information... Done
apt-transport-https is already the newest version (1.2.24).
0 upgraded, 0 newly installed, 0 to remove and 178 not upgraded.

添加源的gpg密鑰

$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
Executing: /tmp/tmp.Ly3pzwSQtG/gpg.1.sh --keyserver
hkp://p80.pool.sks-keyservers.net:80
--recv-keys
58118E89F3A912897C070ADBF76221572C52609D
gpg: requesting key 2C52609D from hkp server p80.pool.sks-keyservers.net
gpg: key 2C52609D: public key "Docker Release Tool (releasedocker) <docker@docker.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

獲取當前操作系統的代號:

$ lsb_release -c
Codename:   xenial

一般情況下,12.04(LTS)代號爲precise,14.04(LTS)爲trusty,15.04爲ivid,15.10爲wily。
此處爲xenial。

接下來添加Docker的官方apt軟件源,創建文件,並寫入源的地址內容:
$ sudo touch /etc/apt/sources.list.d/docker.list

$ cat /etc/apt/sources.list.d/docker.list
deb https://apt.dockerproject.org/repo ubuntu-xenial main
Ubuntu version Repository
Precise 12.04 deb https://apt.dockerproject.org/repo ubuntu-precise main
Trusty 14.04 deb https://apt.dockerproject.org/repo ubuntu-trusty main
Xenial 16.04 deb https://apt.dockerproject.org/repo ubuntu-xenial main

更新apt軟件包緩存:
$ sudo apt-get update

3.安裝Docker

$ sudo apt-get install -y docker-engine

安裝完成之後查看docker服務狀態:

$ sudo systemctl status docker.service
● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled
   Active: active (running) since Fri 2017-08-18 15:11:32 CST; 1min 10s ago
     Docs: https://docs.docker.com
 Main PID: 17393 (dockerd)
   CGroup: /system.slice/docker.service
           ├─17393 /usr/bin/dockerd -H fd://
           └─17422 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-co

Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.514522054+08:00" lev
Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.514593142+08:00" lev
Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.514612318+08:00" lev
Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.515014487+08:00" lev
Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.667623200+08:00" lev
Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.721589597+08:00" lev
Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.888903127+08:00" lev
Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.888968656+08:00" lev
Aug 18 15:11:32 Guiwang dockerd[17393]: time="2017-08-18T15:11:32.909135681+08:00" lev
Aug 18 15:11:32 Guiwang systemd[1]: Started Docker Application Container Engine.

看到‘Active: active (running)’,說明docker已經啓動。至此,安裝結束。

CentOS 7 Install Docker

首先添加yum軟件源:

sudo tee /etc/yum.repos.d/docker.repo << 'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg

$ sudo yum update
$ sudo yum install -y docker-engine

對於CentOS 7系統,CentOS-Extras源中已內置Docker,如果已經配置了CentOS-Extras源,可以直接通過上面的yum命令進行安裝。

配置Docker服務

爲了避免使用docker命令都要用特權身份,可以將當前用戶加入安裝中自動創建的docker用戶組,重新登陸後生效:
$ sudo usermod -aG docker USER_NAME
從docker組中移除用戶:
$ sudo gpasswd -d USER_NAME docker

當然,也可以用創建別名的方式來使用docker,在.bashrc文件中追加:

# dkr爲別名名稱,可自行定義
alias dkr='sudo docker'

Ubuntu下,Docker的默認配置文件爲/etc/default/docker, 服務管理腳本爲/etc/init.d/docker

對於CentOS/RedHat,可通過systemctl命令來管理Docker服務。

Linux下Docker代理配置

創建目錄/etc/systemd/system/docker.service.d ,並創建http-proxy.conf文件,輸入以下內容:

[Service]
Environment="HTTP_PROXY=http://proxyServer:PORT"
Environment="HTTPS_PROXY=http://proxyServer:PORT"

刷新配置:
sudo systemctl daemon-reload
重啓docker服務:
sudo systemctl restart docker

检查变量是否加载:
systemctl show docker --property Environment

systemctl show docker | grep Envir*

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,378评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,356评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,702评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,259评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,263评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,036评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,349评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,979评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,469评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,938评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,059评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,703评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,257评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,262评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,485评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,501评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,792评论 2 345

推荐阅读更多精彩内容

  • 最近想在测试环境下快速搭建一套gitlab ci环境,推进下项目组内规范化开发管理。自己在家里的nas上是用doc...
    ltye阅读 10,622评论 2 2
  • 一.搭建原因 由於開發工作都是在單位局域網內,平時開發機可以通過代理服務器連外網絡,但是服務器是不允許連接到外網的...
    鬼王丶阅读 1,432评论 0 0
  • 坏事情总是接二连三。 女儿收拾好东西去寄宿学校了。老公送她去学校还没到家,我收拾她的书房发现语文课本没有带着。赶紧...
    如烟出岫阅读 183评论 0 0
  • 2016年9月24號,我去看五月天的演唱會。 曾經在參賽時,拒絕同伴提議的《鹹魚》;曾經把他們的歌曲做成歌單,不斷...
    晴天打雷阅读 221评论 0 0