资讯专栏INFORMATION COLUMN

怎么在 CentOS 或者 Fedora 上运行 Docker 容器

huhud / 1251人阅读

摘要:现在在容器管理和部署方面提供了社区支持。在这个教程中,我将描述怎样在和上创建和管理容器。例如,以交互式模式启动一个容器,运行以下命令,这最后的参数是用于在容器内部执行的命令。

  

注:该文原作者为 Dan Nanni,该文的原文

最近 Docker 已经显示出作为云环境中部署应用的一项关键技术。和传统的硬件虚拟化对比,基于 Docker 容器的沙箱为应用部署环境提供了一系列的优势,比如:轻量级隔离、部署轻便、易于维护等等。现在 Red Hat 在 Docker 容器管理和部署方面提供了社区支持。

不仅仅是云环境,Docker 对于终端用户也是十分有用的,特别是当你想在指定的 linux 容器中尝试流行的软件。你能非常容易的为目标环境中启动 Docker 容器,并且在这个容器中安装以及测试软件,然后在你测试完成后丢弃这个容器。从开始到结束这整个流程是非常高效的。你自始至终都可以避免陷入搞糟你的系统环境的麻烦中。

在这个教程中,我将描述怎样在 CentOS 和 Fedora 上创建和管理 Docker 容器。注意,Docker 仅仅支持 64 位的操作系统。如果你想基于 Ubuntu 测试,请参考这个教程

在 CentOS 或 Fedora 上安装 Docker 容器

在 CentOS 上安装 Docker,首先需要添加 EPEL 仓库,然后使用 yum 命令:

$ sudo yum install docker-io
$ sudo service docker start
$ sudo chkconfig docker on

在 Fedora 上安装 Docker, 使用如下命令:

$ sudo yum install docker-io
$ sudo systemctl start docker.service
$ sudo systemctl enable docker.service

在 CentOS 或 Fedora 上安装完成 Docker 后,为了能以非 root 用户运行 docker,你需要把你自己添加进 docker 用户组,使用如下命令:

sudo usermod -a -G docker $USER

登出,然后再登入,以使组改变生效。
这个时候,你应该可以以一个非特权用户运行 docker 命令了。

Docker 的基础用法

为了启动一个新的 Docker 容器,你需要决定使用哪个 Docker 镜像,你可以通过搜索官方的 Docker image index ,这里面列出了公共可用的 Docker 镜像。这个 Docker 索引中包含了由 Docker team 管理的 linux 基础镜像(比如:Ubuntu, Debian, Fedora, CentOS),也有用户贡献的普通镜像(比如:MySQL, Redis, WordPress)。

例如,以交互式模式启动一个 Ubuntu 容器,运行以下命令,这最后的参数 "/bin/bash" 是用于在容器内部执行的命令。

$ docker run -i -t ubuntu /bin/bash

第一次我们运行以上命令,它将通过网络下载可用的 Ubuntu 的 Docker 镜像,并且使用这个镜像启动一个 Docker 容器,一个 Ubuntu 容器会立即启动,你将在容器中看到 console 提示,你能通过容器沙箱访问一个完全成熟的 Ubuntu 操作系统。

如果你在提示处键入 exit ,你将从容器中退出,并且容器将被停止。

获取一个所有容器的列表(包括停止的),运行如下命令:

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS              PORTS               NAMES
6a08a0b2bb4c        ubuntu:14.04        /bin/bash           About a minute ago   Exit 0                                  cocky_ritchie


后台重起一个已经停止的容器:
$ docker start [container-id]

移除一个已经停止的容器:
$ docker rm [container-id]

为了查看或者是与容器交互,进入一个后台运行的容器,
$ docker attach [container-id]

![请输入图片描述][15] 你可以自由的定制一个正在运行的容器(比如,安装新软件),如果你想保存当前容器的变更,首先是键入 ```exit``` 命令退出交互式模式,然后通过使用这个命令来保存这个变更的镜像,存储成一个新的不同的镜像。
$ docker commit [container-id] [new-image-name]
获取你的容器的容器 ID ,你可以使用 ```docker ps -a``` 来查看。
![请输入图片描述][16]

一旦你像这样创建一个新的镜像,你可以使用这个镜像运行一个新的容器。

你也可以下载任何的公共镜像(比如: ubuntu, bowery/mysql),并且在本地仓库存储他们,如下。
$ docker pull [image name]

查看所有的本地已经下载或者保存的镜像:
$ docker images

你可以选择一个指定的镜像来启动一个容器:
$ docker run -i -t [image-id] /bin/bash
![请输入图片描述][17]


从本地仓库中删除一个镜像:
$ docker rmi [image-id]

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/17362.html

相关文章

  • 怎么 CentOS 或者 Fedora 运行 Docker 容器

    摘要:现在在容器管理和部署方面提供了社区支持。在这个教程中,我将描述怎样在和上创建和管理容器。例如,以交互式模式启动一个容器,运行以下命令,这最后的参数是用于在容器内部执行的命令。 注:该文原作者为 Dan Nanni,该文的原文 最近 Docker 已经显示出作为云环境中部署应用的一项关键技术。和传统的硬件虚拟化对比,基于 Docker 容器的沙箱为应用部署环境提供了一系列的优势...

    taowen 评论0 收藏0
  • CentOS 6.x安装 docker.io成功

    摘要:前提是都需要联网,具体安装过程如下。禁用安装包在发行版的介质里面已经自带了,可以从安装。或如果出现问题,请在线安装,下载文件。这一步执行之后,会在下生成两个文件,用于从官网下载包。参考,在位安装中文在上安装原文链接地址 docker是什么就不多说了,见docker基础原理介绍。 docker容器最早受到RHEL完善的支持是从最近的CentOS 7.0开始的,官方说明是只能运行于64位架...

    TANKING 评论0 收藏0
  • CentOS 7 使用docker安装mysql

    摘要:适用于,其他版本可能有细微不同。如果想要自定义配置,建议向目录中创建文件。新建的文件可以任意起名,只要保证后缀名是即可。 1.检查内核版本,必须是3.10及以上 uname -r 2.安装docker yum install docker -y 3.启动docker systemctl start docker 4.设置为开机自启 systemctl enable docker 5....

    thursday 评论0 收藏0

发表评论

0条评论

huhud

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<