Docker
Linux容器运行时Docker开源
Docker是一个功能强大的自动化分布式系统:大规模的Web部署、数据库集群、持续部署系统、私有PaaS、面向服务的体系结构等。Docker使用一个在进程级上运行的高级API来补充LXC(Linux Container),它可以运行Unix进程,并为隔离和可重复性跨服务器提供了保证。
值得关注的特性:
文件系统隔离:每个进程容器运行在一个完全独立的根文件系统里。
资源隔离:系统资源,像CPU和内存等可以分配到不同的容器中,使用cgroup。
网络隔离:每个进程容器运行在自己的网络空间,虚拟接口和IP地址。
日志:收集和记录标准流(stdout/stderr/stdin)里的每个进程容器,用于实时和批量检索。
变更管理:被修改的容器文件系统会被提交到一个新的image,留着重用来创造更多的容器,无需模板或手动配置。
交互式shell
使用示例:
运行交互式shell
# Download a base image
docker pull base
# Run an interactive shell in the base image,
# allocate a tty, attach stdin and stdout
docker run -i -t base /bin/bash启动一个长期运行的工作进程
# Run docker in daemon mode
(docker -d || echo "Docker daemon already running") &
# Start a very useful long-running process
JOB=$(docker run -d base /bin/sh -c "while true; do echo Hello world; sleep 1; done")
# Collect the output of the job so far
docker logs $JOB
# Kill the job
docker kill $JOB前往官网查看更多详细介绍:http://docker.io/