设为首页 收藏本站
查看: 1469|回复: 0

[经验分享] 如何在CentOS或Fedora上运行Docker容器?

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-12-31 08:13:06 | 显示全部楼层 |阅读模式

最近,炙手可热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命令:

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

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

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

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

$ 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”就在容器里面执行。

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

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

wKiom1Q4pOeDaC-YAAIXFGJDPIU288.jpg

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

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

$ docker ps -aCONTAINER 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]

wKiom1Q4pPyjrWwNAAERXrmiQAk617.jpg

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

$ docker commit [container-id] [new-image-name]

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

wKioL1Q4pcrCBGtkAAF0BhcHIoY354.jpg

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

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

$ docker pull [image name]

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

$ docker images

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

$ docker run -i -t [image-id] /bin/bash

wKiom1Q4pT6zPm8YAAGAlIrme_w883.jpg

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

$ docker rmi [image-id]

wKiom1Q4pVnSYoT1AAFAsTDQFZQ908.jpg



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-39965-1-1.html 上篇帖子: Docker简单的使用命令汇总整理 下篇帖子: Docker创建本地仓库 如何
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表