Docker 第三代PAAS平台
ku8eye web开发环境 以docker镜像方式提供,下载地址为: http://pan.baidu.com/s/1gdYk4CV
开源:open container project
虚拟化技术难点:网络/存储
Docker的核心技术
cgroups:限制进程的分配资源【cpu/mem/iops/iobandwide/net/device acess…】
namespace:
LXC:
性能:LXC>>KVM>>XEN
内存利用率:LXC>>KVM>>XEN
隔离程度:XEN>>KVM>>LXC
AUFS:层状文件系统,支持将不同目录挂载到同一个虚拟文件系统下。
Docker 全生命周期开发模式:DevOps
Docker概念
Docker Image:类
Docker Containner:是Image的实例,共享内核
Containner的生命周期:Created Ruuning Stopped Paused Killed
Docker Daemon:创建和运行Containner的Linux守护进程,并提供Rest API服务。
Docker Registry/Hub:即拉即用
Docker部署安装
内核:linux kernel3.8+
Docker1.8:
centos7+
创建docker源:/etc/yum.repos.d/docker.repo
安装:yun install docker-engine
防火墙:关闭firewalld,安装iptables
systemctl disable firewalld
yum -y install iptables-service
systemctl start iptables
systemctl enable iptables
启动Docker Daemon:
systemctl start docker.service
systemctl enable docker.service
systemctl grep docker
ip addr: Docker0虚拟网桥
配置文件:/etc/sysconfig/docker
OPTIONS='--selinux-enabled' #开启selinux
DOCKER_CERT_PATH=/etc/docker #证书目录
INSECURE_REGISTRY='--insecure-registry 10.20.161.77:5000' #添加安全仓库
服务配置文件:/usr/lib/systemd/system/docker.service
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target
Wants=docker-storage-setup.service
[Service]
Type=notify
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
EnvironmentFile=-/etc/sysconfig/docker-network
Environment=GOTRACEBACK=crash
ExecStart=/usr/bin/docker daemon $OPTIONS \
$DOCKER_STORAGE_OPTIONS \
$DOCKER_NETWORK_OPTIONS \
$ADD_REGISTRY \
$BLOCK_REGISTRY \
$INSECURE_REGISTRY
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
MountFlags=slave
TimeoutStartSec=1min
[Install]
WantedBy=multi-user.target
log存储目录:/var/log/message
image存储目录:/var/lib/docker/
container存储目录:/var/lib/docker/containers/
Docker命令:
search images run exec create start ps
制作Image
1.docker commit <container> [repo:tag]
2.docker build -t name .
Dockerfile:FROM MAINTAINER ENV USER RUN CMD ENTERPOINT EXPOSE ADD COPE VOLUME WORKDIR ONBUILD
容器互联 volume link
网络模式 :host container none bridge