一 应用场景描述

现在需要搭建一个内部邮件服务器用于接收zabbix报警信息,邮件服务器选用iRedmail开源邮件系统。但是由于可用服务器不多,邮件服务器的使用压力也不大,于是考虑在一台空闲的物理机上安装KVM虚拟机或者Docker容器的方式来部署iRedmail邮件服务器。考虑到目前Docker容器很流行的,使用KVM虚拟机还要配置和管理KVM虚拟机,不如使用Docker容器来得方便。于是就有了这篇文章。


二 Docker基础知识

目前最新版本的Docker在CentOS6.5上运行不良,最好升级操作系统到CentOS7并升级内核到4.0以上,以下有说明。


在CentOS7上面安装Docker

yum -y install docker*


启动Docker服务

service docker start


获取最近的CentOS镜像

docker pull centos


获取CentOS6的镜像

docker pull centos:6 


查看本地所有的镜像

docker p_w_picpaths


查看单个镜像

docker p_w_picpaths centos



docker run -v /usr/sbin:/usr/sbin --rm centos /usr/sbin/ip addr show

--rm 容器停掉后会被删除


docker run -v /usr/sbin:/usr/sbin  --name=test   centos /usr/sbin/ip addr show 

--name 给容器改名字


docker start -i test    开启test容器


docker run --name=mybash -it centos /bin/bash

可以在容器中安装软件

yum -y install net-tools

docker ps -a列出所有的容器

docker ps 列出正在运行的容器

docker start -ai mybash  开启容器

docker run --name="log_test" -v /dev/log:/dev/log --rm centos logger "Testing logging to the host"

journalctl -b | grep Testing

docker inspect mybash  查看容器的元数据信息

docker inspect   --format='``.`NetworkSettings`.`IPAddress`' mybash

docker inspect --format='``.`State`.`Pid`' mybash