在CentOS或Fedora上运行Docker容器的方法与步骤

最近,炙手可热Docker已俨然成为将应用程序部署到云环境的一种关键技术。相比传统的硬件虚拟化技术,基于 Docker的容器沙箱为应用程序部署环境提供了许多优点,比如轻型隔离、部署的应用程序便于移植、易于维护等。现在,红帽公司正在引领开源社区,竭力简化管理和部署Docker容器的任务。

Docker不仅仅适用于云环境,它对最终用户来说也相当有用,如果你想在特定的Linux环境下测试某一款软件,更是如此。你可以为目标环境轻松构建Docker容器,在里面安装和测试软件,然后一旦完成工作,就可以扔掉这个容器。从头到尾的整个过程相当高效而便捷,可以始终避免把你的终端系统弄得乱七八糟。

在本教程中,我将介绍如何在CentOS或Fedora上创建和管理Docker容器。请注意:眼下Docker只在64位主机系统上得到支持。如果你想在Ubuntu上试一试Docker,请参阅这篇教程:http://xmodulo.com/manage-linux-containers-docker-ubuntu.html

将Docker安装到CentOS或Fedora上

要将Docker安装到CentOS上,首先启用EPEL软件库,然后使用yum命令:

  1. ___FCKpd___0nbsp;sudo yum install docker-io ___FCKpd___0nbsp;sudo service docker start
  2. ___FCKpd___0nbsp;sudo chkconfig docker on

要将Docker安装到Fedora上,使用下面这些命令:

  1. ___FCKpd___1nbsp;sudo yum install docker-io ___FCKpd___1nbsp;sudo systemctl start docker.service
  2. ___FCKpd___1nbsp;sudo systemctl enable docker.service

将Docker安装到CentOS或Fedora上后,你需要将自己添加到docker群组,那样才能以非root用户的身份来运行Docker。为此,使用这个命令:

  1. ___FCKpd___2nbsp;sudo usermod -a -G docker $USER

退出,重新登录,以激活群组变更。

至此,你应该能够以非特权用户的身份来运行docker命令了。

Docker的基本用法

你想启动一个新的Docker容器,就需要确定为容器使用哪个Docker映像。你可以搜索官方的Docker映像索引(https://index.docker.io),上面列出了公开可用的Docker映像。Docker索引包括:Docker团队管理的Linux基本映像(比如Ubuntu、Debian、Fedora和 CentOS),以及用户贡献的自定义映像(比如MySQL、Redis和WordPress)。

比如说,想在交互模式开启动一个Ubuntu容器,就要运行下面这个命令。容器一启动,最后的变量“/bin/bash”就在容器里面执行。

  1. ___FCKpd___3nbsp;docker run -i -t ubuntu /bin/bash

你头一次运行上面这个命令时,它会通过网络下载可用的一个或多个Ubuntu docker映像,然后使用该映像,启动Docker容器。Ubuntu容器会立马启动,你会看到容器里面的控制台提示符。你可以访问容器沙箱里面的功能完备的Ubuntu操作系统。

如果你在提示符处键入“exit”,就会退出容器,容器会被停止。

想列出所有的容器(包括已停止的容器),运行这个命令:

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

想在守护进程模式下重新启动某个已停止的容器:

  1. ___FCKpd___6nbsp;docker start [container-id]

想移除某个已停止的容器:

  1. ___FCKpd___7nbsp;docker rm [container-id]

想连接到后台运行的容器,以便查看容器或与之交互:

  1. ___FCKpd___8nbsp;docker attach [container-id]

你可以随意定制某个运行中的容器(比如安装新软件)。如果你想把变更内容保存在当前容器中,先要在提示符处键入“exit”,退出容器的交互模式。然后使用这个命令,将已变更的映像保存为不同的映像:

  1. ___FCKpd___9nbsp;docker commit [container-id] [new-image-name]

想获得你容器的容器ID,可以使用之前描述的“docker ps –a”命令。

一旦你已构建了像这样的新映像,就可以借助该映像启动一个新的容器了。

你还可以下载任何公开的容器映像(比如ubuntu,bowery/mysql),将它们保存到本地软件库中,如下所示。

  1. ___FCKpd___10nbsp;docker pull [image name]

想查看所有本地下载/保存的容器映像:

  1. ___FCKpd___11nbsp;docker images

你可以选择从哪个特定的映像来启动容器:

  1. ___FCKpd___12nbsp;docker run -i -t [image-id] /bin/bash

想从本地软件库移除某个容器映像:

  1. ___FCKpd___13nbsp;docker rmi [image-id]

英文:http://xmodulo.com/docker-containers-centos-fedora.html

(0)

相关推荐

  • 在微软Windows上运行Linux容器的 准备工作

    时代在进步,科技在发展.我们现在的技术水平可以在任何Windows的服务器上运行 Docker 这个容器了,它是以 Ubuntu 作为宿主基础的.如果你喜欢借助 Docker 技术和 Windows ...

  • 在电脑上运行android app的方法

    本文将会介绍4种在电脑上运行android app的方法,如下: 1 使用google官方提供的android模拟器 2 使用第三方提供的模拟器Bluestacks 3 使用第三方提供的模拟器Geny ...

  • CentOS6.x上部署Docker容器环境的全流程攻略

    Docker.io 是轻量级的“容器引擎+映像仓库”,在LXC(linux轻量级容器)的基础上构建,可以运行任何应用程序.docker.io的核心层由以下几个部分组成:1.可执行程序,“/usr/bi ...

  • 4种在Linux上运行Windows软件的方法

    Linux已经走了很长的路,但是您可能还需要偶尔运行Windows应用程序 - 尤其是仅限Windows的PC游戏.幸运的是,在Linux上运行Windows应用程序有很多方法. 当然,在尝试运行旧的 ...

  • 如何在CentOS7上改变网络接口名的方法与步骤

    提问: 在CentOS7,我想将分配的网络接口名更改为别的名字。有什么合适的方法来来重命名CentOS或RHEL7的网络接口? 传统上,Linux的网络接口被枚举为eth[0123...],但这些名称 ...

  • 在Windows系统上安装Docker的教程

    大家好,今天我们来了解一下 Windows 操作系统中的 Docker 以及在其中安装 Docker Windows 客户端的知识.Docker 引擎使用 Linux 特有的内核特性,因此不能通过 W ...

  • 在CentOS、Fedora系统中使用Docker的方法

    一.从docker官方yum源进行安装 1.添加docker官方源 cat >/etc/yum.repos.d/docker.repo <<-EOF [dockerrepo] nam ...

  • Win10 msvcr120.dll没有被指定在Windows上运行

    msvcr120.dll是vs2010编译的程序默认的库文件,它可以解决某些大型游戏.程序由于vs2010编译系统中缺失此dll的问题.在安装Windows 10系统的电脑中运行程序时,出现错误提示, ...

  • 怎么在CentOS系统上安装Docker

    Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止.Docker 帮助系统管理员和程序员在容器中开发应用程序,并且 ...