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

   2015-07-29 0

最近,炙手可热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操作系统。

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

如果你在提示符处键入“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] 

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

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

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

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

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

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

你还可以下载任何公开的容器映像(比如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  

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

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

  1. ___FCKpd___13nbsp;docker rmi [image-id] 

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

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

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 用Xshell设置CentOS密钥登录
    用Xshell设置CentOS密钥登录
    今天带来设置X shell 密钥登录  因为用的中文x shell 所以按照中文设置很简单1.点击工具(Tools)------新建用户密钥生成向导(New User key Wizard)(附图)2.然后出现下图时,记得密钥类型 选择RSA.其实选择DSA ,也能实现,二者其实是不同的算法。(我用的R
    03-08
  • centOS下安装Adobe Flash Player
    centOS下安装Adobe Flash Player
    centOS下安装Adobe Flash Player  2009-10-09 11:29:33|  分类:linux|  标签: |订阅 写出来就这么简单几步,当初刚接触Linux的时候搜索了很长时间,找了很多资料,总是出现这样那样的问题,最后终于摸索出最简单最有效的安装的方法。 随便打开一个带
    03-08
  • 部署Node.js项目(CentOS) node项目搭建
    部署Node.js项目(CentOS) node项目搭建
    操作步骤步骤 1:创建ECS实例选择操作系统为公共镜像CentOS7.2。使用root用户登录Linux实例。步骤2:部署Node.js环境—二进制文件安装该部署过程使用的安装包是已编译好的二进制文件,解压之后,在bin文件夹中就已存在node和npm,无需手工编译。安装步骤:1、
    02-10
  • centos安装python与jdk centos安装python3.7
    centos安装python与jdk centos安装python3.7
    安装python#压缩包安装[root@china ~]# yum -y install zlib*Loaded plugins: fastestmirror, refresh-packagekit, securityLoading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun
    02-10
  • centos6下同时安装python2和python3
    #build-essential compile packagesyum groupinstall "Development Tools"yum install openssl-develyum install zlib-develyum install make gcc gcc-c++ kernel-develhttp://unix.stackexchange.com/questions/291737/zipimport-zipimporterror-cant-decomp
    02-10
  • CentOS下查看文件和文件夹大小 linux查看文件夹
    当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。  df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。  df可以查
    02-10
  • centos7 离线升级/在线升级操作系统内核
    centos7 离线升级/在线升级操作系统内核
    centos7 离线升级/在线升级操作系统内核目录一.前言二.系统环境三.系统内核下载网址四.centos7离线升级系统内核1.先查看系统环境2.离线升级系统内核五.在线升级系统内核一.前言CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于
    02-10
  • centos7 rc.local脚本执行不成功
    腾讯云 centos7   配置文件/etc/rc.local的内容如下:#!/bin/sh#secu_agent init monitor, install at Thu Aug 3 11:19:41 CST 2017/usr/local/sa/agent/init_check.sh/dev/null 21/usr/sbin/ntpdate ntpupdate.tencentyun.com /dev/null 21 /usr/local/qclo
    02-10
  • 如何在centos7启动时自动挂载硬盘
    在/etc/rc.local中加入如下的语句,这样就不用每次重启后手动挂载了(后面挂载的目录根据自己的需求而定):mount  /dev/sdb1 /usr/sharedfiles/sdbmount  /dev/sdc1 /usr/sharedfiles/sdcmount  /dev/sdb1 /root/sdbmount  /dev/sdc1 /root/sdc注意:可以
    02-10
  • centos7.2 开启防火墙
    开启防火墙当我们修改了某些配置之后(尤其是配置文件的修改),firewall并不会立即生效。可以通过两种方式来激活最新配置 systemctl restart firewalld 和 firewall-cmd --reload 两种方式,前一种是重启firewalld服务,建议使用后一种“重载配置文件”
    02-10
点击排行