最近Docker1.0稳定版发布了,这给paas注入新鲜的血液。

Docker是一个功能强大的自动化分布式系统:大规模的Web部署、数据库集群、持续部署系统、私有PaaS、面向服务的体系结构等。

Docker是一种增加了高级API的LinuX Container(LXC)技术,提供了能够独立运行Unix进程的轻量级虚拟化解决方案。

它提供了一种在安全、可重复的环境中自动部署软件的方式。

关于Docker运行在Centos的操作,下面由cantgis进行讲解。


Cantgis的实验环境都是在Centos7种运行:


1.所有 docker 操作都需要 root 权限需要加 sudo:

docker search centos

2.下载服务镜像(image),挑选有 Tag 标示的,相对好一些。

docker pull centos:centos7

3.查看下载完的镜像

docker images

4.基于下载完的镜像创建一个Container

docker run -i -t centos:centos7 /bin/bash

这样你就进入一个Container,一个封装新的centos7系统,exit退出这个container

5.查看所有的container

docker ps -a

6.若是从私有或者公有的docker库下载相应image,采用build参数,参数【.】是配置文件请点击,DockerFile

docker build -t NEW_Images .

7.在当前目录根据 Dockerfile 构建容器[这条命令适用于在一个container中创建了HTTPD或者Nginx服务,-p下面映射端口发布出来。]

docker run -i -t - p 2013:80

运行一个 Container,支持的参数:

  • -d Detached 或者 daemon mode,后台运行。

  • -i -t 开一个putty 终端,保持交互模式,这两个一般共同使用。

  • -e 设置环境变量参数,参考 Install GitLab With Docker 

  • -p [host_port]:[container_port] 映射 HOST 端口到容器,方便外部访问容器内服务,host_port 可以省略.

  • -v [host-path]:[container-path] 把 HOST 文件夹挂载到 Container 用以保存数据。

  • --rm 自动删除已运行存在的相同 IMAGE 的容器。

8.列出当前运行的容器, -a 会列出所有,包括已停止的, -q 只列出容器 ID。

docker ps -a -q | xargs docker rm

这条可以删除所有未运行的容器。

10.删除指定的Container

docker rm ContainerID

11.删除指定的images

docker rmi imagesID

更多可参考 Docker 文档 

下面这张图,实在是解释的非常好,大家还是看图吧。

wKiom1PsZAGC6gmRAAKyXSfmYaE819.jpg