CentOS7环境系列二:Docker安装和配置

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

详细介绍就不普及了,下面内容来自Docker官网给的CentOS下Docker的安装指导和自我实践。

目录索引

前提条件
​ — 删除方法

安装Docker
​ — 方法一:使用存储库安装
​ —— 设置存储库
​ —— 安装Docker
​ —— 升级Docker的方法
​ — 方法二:下载包安装

Docker配置
​ — 让非Root用户管理Docker
​ — 开机自动启动Docker
​ — Docker加速器

附:安装命令纯净版

前提条件

  1. 64位版本的CentOS7(系统安装看这里
  2. 删除非官方的Docker包
删除方法:

Red Hat的操作系统存储库包含旧版本的Docker,使用程序包名称docker而不是docker-engine。如果您安装了此版本的Docker,请使用以下命令删除它:

$ sudo yum -y remove docker docker-common container-selinux

您可能还需要删除docker-selinux与官方docker-engine软件包冲突的软件包。使用以下命令删除它:

$ sudo yum -y remove docker-selinux

(命令不会删除/var/lib/docker中的内容,因此使用旧版本的Docker创建的任何图像,容器或卷都会保留。)

本人实践:

​ 因为我是CentOS7最小安装,这些东西都没有╮(╯_╰)╭!

安装Docker

可以根据不同的需求以不同方式安装Docker,包括:

  • 设置Docker's repositories并从中安装,以方便安装和升级任务。这是推荐的方法。
  • 某些用户下载RPM软件包并手动安装并完全手动管理升级。
  • 一些用户不能使用第三方存储库,并且必须依赖于CentOS存储库中的Docker版本。

方法一:使用存储库安装

第一次安装需要先设置存储库,以后就可以从存储库进行安装、更新或降级Docker了。

设置存储库
  1. 安装yum-utils,它提供yum-config-manager实用程序:

    $ sudo yum install -y yum-utils
    
  2. 使用一下命令设置稳定版本的存储库:

    $ sudo yum-config-manager \
        --add-repo \
        https://docs.docker.com/engine/installation/linux/repo_files/centos/docker.repo
    
  3. 可选:启动测试存储库。此存储库包含在docker.repo上面的文件中,但默认情况下禁用。您可以在稳定存储库旁边启用它。不要在生产系统或非测试工作负载上使用不稳定的存储库。

    警告:如果启用了稳定和不稳定的存储库,则在yum install or yum update命令中指定版本的安装或更新将始终安装尽可能高的版本,这几乎肯定是不稳定的版本。

    $ sudo yum-config-manager --enable docker-testing
    

    您可以testing通过运行yum-config-manager 带有--disable标志的命令来禁用存储库。要重新启用它,请使用 --enable标志。以下命令禁用存储testing 库。

    $ sudo yum-config-manager --disable docker-testing
    
安装Docker
  1. 更新yum包索引。

    $ sudo yum makecache fast
    

    如果这是您在添加Docker存储库之后第一次刷新包索引,将提示您接受GPG密钥,并且将显示密钥的指纹。验证指纹是否匹配58118E89F3A912897C070ADBF76221572C52609D,如果匹配 ,请接受密钥。

  2. 安装最新版本的Docker,或转到下一步安装特定版本。

    $ sudo yum -y install docker-engine
    

    警告:如果启用了稳定和不稳定的存储库,则安装或更新Docker而不在 yum installor yum upgrade命令中指定版本将始终安装最高可用版本,这几乎肯定是不稳定版本。

  3. 在生产系统上,您应该安装特定版本的Docker,而不是总是使用最新版本。列出可用的版本。此示例使用sort -r命令按版本号对结果进行排序,从最高到最低,并被截断。

    注意:此yum list命令仅显示二进制包。要显示源包以及,.x86_64从包名称中省略。

    $ yum list docker-engine.x86_64  --showduplicates |sort -r
    
    docker-engine.x86_64  1.13.0-1.el7                               docker-main
    docker-engine.x86_64  1.12.5-1.el7                               docker-main   
    docker-engine.x86_64  1.12.4-1.el7                               docker-main   
    docker-engine.x86_64  1.12.3-1.el7                               docker-main 
    

    列表的内容取决于启用哪些存储库,并且将特定于您的版本的CentOS(.el7在本示例中由版本上的后缀指示)。选择要安装的特定版本。第二列是版本字符串。第三列是存储库名称,指示软件包来自哪个存储库,其扩展名其稳定性级别。要安装特定版本,请将版本字符串附加到软件包名称,并用连字符(-)分隔它们:

    $ sudo yum -y install docker-engine-<VERSION_STRING>
    
  4. 启动Docker。

    $ sudo systemctl start docker
    
  5. docker通过运行hello-world 映像验证是否已正确安装。

    $ sudo docker run hello-world
    

    此命令下载测试映像并在容器中运行它。当容器运行时,它打印一个信息消息并退出。

Docker已安装并运行。您需要使用sudo运行Docker命令。如果想允许非特权用户运行Docker命令,请参见后面的配置部分。

升级Docker的方法

要升级Docker,首先运行sudo yum makecache fast,然后再选择新版本进行安装。

本人实践:

​ 设置稳定版本那句命令为了显示用了”\“换行,其实就是一句命令下来的,其他执行正常安装成功。

方法二:下载包安装

如果不能使用Docker的存储库来安装Docker,可以下载该.rpm版本的 文件并手动安装。每次要升级Docker时,都需要下载新文件。

  1. 转到https://yum.dockerproject.org/repo/main/centos/ 并选择您的CentOS版本的子目录。下载.rpm要安装的Docker版本的文件。

  2. 安装Docker,将下面的路径更改为您下载Docker包的路径。

    $ sudo yum -y install /path/to/package.rpm
    
  3. 启动Docker。

    $ sudo systemctl start docker
    
  4. docker通过运行hello-world 映像验证是否已正确安装。

    $ sudo docker run hello-world
    

同样,您需要使用sudo运行Docker命令。如果想允许非特权用户运行Docker命令,请参见后面的配置部分。

Docker配置

让非Root用户管理Docker

默认情况下,其他用户只能使用sudo来使用root账号运行Docker。如果在使用docker命令时不想使用sudo,需要创建一个名为docker的用户组,并将当前用户添加进去。

  1. 创建docker组。

    $ sudo groupadd docker
    
  2. 将您的用户添加到docker组。

    $ sudo usermod -aG docker $USER
    
  3. 注销并重新登录,以便重新评估您的组成员资格。

  4. 验证您可以docker没有命令sudo

    $ docker run hello-world
    

开机自动启动Docker

开启:

$ sudo systemctl enable docker

关闭:

$ sudo systemctl disable docker

Docker加速器

万恶的那啥,在国内连接Docker Hub非常的不稳定,还好有DaoCloud的加速器。注册用户登录后,选择加速器。根据提示就可以将 --registry-mirror 加入到你的 Docker 配置文件 /etc/default/docker 中,方便国内用户使用。

附Docker安装命令纯净版

[xxx@localhost ~]$ su root
Password:
[root@localhost ~]$ yum -y remove docker docker-common container-selinux docker-selinux
[root@localhost ~]$ yum install -y yum-utils
[root@localhost ~]$ yum-config-manager --add-repo https://docs.docker.com/engine/installation/linux/repo_files/centos/docker.repo
[root@localhost ~]$ yum-config-manager --disable docker-testing
[root@localhost ~]$ yum makecache fast
[root@localhost ~]$ yum -y install docker-engine
[root@localhost ~]$ docker version
[root@localhost ~]$ docker run hello-world
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容