码迷,mamicode.com
首页 > 其他好文 > 详细

Centos 6.5 docker搭建与配置

时间:2015-09-21 15:57:45      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:docker

·镜像 docker run -i -t centos /bin/bash 运行起来就是容器,上传到官方hub的是镜像

·镜像保存在 /var/lib/docker目录下

·镜像存储在仓库中,然后从仓库中下载镜像,仓库存储在registry中,即docker hub

·过程:下载基础镜像centos(精简版),然后增加自己的内容,保存成一个新的镜像,运行起来

安装docker

1.安装epel扩展源

rpm -ivh epel-release-6-5.noarch.rpm    
vim /etc/yum.repos.d/epel.repo

2.安装、启动docker

yum -y install  docker-io
service docker start

配置docker

1.获取centos基础镜像

docker pull centos

2.运行centos镜像

docker run -i -t centos /bin/bash

创建镜像

1.让docker能上网

vim /etc/default/docker
“docker_OPTS="--dns 8.8.8.8 --dns 8.8.4.4"

2.配置yum源

  如果没有wget 命令,需要用yum安装

wget <epel地址> 
rpm -ivh epel-release-6-5.noarch.rpm    
vim /etc/yum.repos.d/epel.repo

3.退出镜像,并保存

exit      #退出
docker commit < cfe3bf676fe7>  <newimage>  #保存

3.创建Dockerfile文件  

mkdir static_web       #创建存储Dockerfile的目录
cd static_web
vim Dockerfile    //加入
   FROM         [centos]                     #指定一个基础镜像名称,后续操作都基于这个镜像。 
   MAINTAINER   zhaijunming  9618154@qq.com  #指定镜像的作者及联系方式 
   RUN          yum   update                 #更新yum(每条run指令都会创建一个新的镜像层,如果该指令执行成功,就会将此镜像层提交,之后继续执行下一条指令)
   RUN          yum    -y    install nginx   #安装nginx
   RUN          echo “hello nginx” >/usr/share/nginx/html/index.html
   EXPOSE       80                           #应用程序将会使用这个端口。出于安全原因docker并不会自动打开这个端口,需要在使用docker run时指定使用哪个端口

4.执行Dockerfile   #使用build

cd static_web                              #进入到Dockerfile所在目录
docker build -t="jamtur01/httpdimage"  .   #httpdimage是对dockerfile里指定的那个镜像做完操作后,保存的新的镜像的名称

###Dockerfile执行过程

 ·docker从基础镜像运行一个容器 

 ·执行一条命令,对容器做出修改

 ·执行类似docker commit 的操作,保存,提交一个新的镜像层

 ·docker再基于刚提交的镜像运行一个新的容器

 ·执行docker中的下一条指令,知道所有指令都执行完毕

-----------------------------------------------------------------

常用命令集合

·docker version 查看docker客户端、服务端的版本号等

·docker search <image name>  查找镜像

·docker pull   <image name>  下载镜像

·docker push   <image name>  上传镜像

·docker image  -a  列出所有镜像

·docker ps     显示正在运行中的容器

            -a  显示所有的容器,包括未运行的

            -l  显示最后一次创建的容器,包括未运行的 

·docker logs   <容器ID> 列出在此容器中执行的操作

·docker rm     <容器>   删除此容器

·docker rm  ‘docker ps -a -l‘ 删除所有容器

·docker start/stop/restart <容器ID> 启动/停止/重启容器

·docker attach <容器>  重新附着到一个运行中的容器

·docker run -i -t centos /bin/bash 使用镜像创建一个容器,登录到/bin/bash 

                                  -t:给容器分配一个伪tty

·docker run -i -t -p <host_port:contin_port> 将容器的端口映射到宿主机端口

·docker build <path> 寻找path路径下名为Dockerfile的文件,使用此配置生成新的镜像文件

·docker build - < <dockerfile> 使用指定的dockerfile配置文件,docker以stdin方式获取内容,使用此配置生成新的image

·docker port <container> <container port> 查看本地哪个端口映射到container的指定端口,其实用docker ps 也可以看到

·docker commit <容器ID> <新的镜像名称> 

·docker images 查看所有镜像


本文出自 “翟军铭的linux博客” 博客,请务必保留此出处http://zhaijunming5.blog.51cto.com/10668883/1696721

Centos 6.5 docker搭建与配置

标签:docker

原文地址:http://zhaijunming5.blog.51cto.com/10668883/1696721

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!