Docker: Start
目录

Install

for ubuntu 15.04

proxy

在/etc/systemd/system/multi-user.target.wants/docker.service里添加

[Service]
Environment="HTTP_PROXY=http://proxy.example.com:80/"

export no_proxy=/var/run/docker.sock

  • https://docs.docker.com/engine/admin/systemd/
  • http://docs.master.dockerproject.org/articles/systemd/
  • https://stackoverflow.com/questions/26550360/docker-ubuntu-behind-proxy

Commands

环境信息相关

  • docker info
  • docker version

进入docker container

docker exec -it CONTAINER_ID_OR_NAME bash

创建docker container

  • docker create
  • docker run

docker状态

docker top docker logs docker stats

日志信息相关

  • docker events
  • docker history
  • docker logs

Docker Hub 服务相关

  • docker login
  • docker pull
  • docker push
  • docker search

学习路线

开发团队

开发团队在引入Docker技术的过程中,首先需要解决的是让团队成员尽快掌握Docker命令行的使用。在熟悉了Docker命令行之后,团队需要解决几个关键问题具体如下:

  1. Base Image的选择, 比如phusion-baseimage
  2. 配置管理Docker镜像的工具的选择,比如Ansible、Chef、Puppet
  3. Host主机系统的选择,比如CoreOS、Atomic、Ubuntu

开发部署:

  1. Fig: 简化Dockerfile

CI:

  1. Jenkins + Pipeline

发布:

  1. Apache Mesos + marathon
  2. Google Kubernetes
  3. Panamax

Docker三大组件:

  1. Compose
  2. Swarm
  3. Machine

Next

  • Filesystem
  • Volume
  • Net
  • cgroup, namespace

fs tree

/var/lib/docker

  • aufs/
  • diff/[ID]/*: 镜像文件系统
  • layers/[ID]: 镜像依赖描述文件
  • mnt/[ID]/: 镜像只读挂载点
  • mnt/[CID]-init/: 容器最后只读层挂载点(与当前OS环境相关)
  • containers/
  • execdriver/
  • graph/
  • [ID]/json: 镜像详细描述文件
  • [ID]/layersize:
  • init/
  • tmp/
  • trust/
  • vfs/
  • volumes/
  • linkgraph.db
  • repositories-aufs: 镜像列表

Images

registry

FS

Net

linux bridge

commands:

  • ip: 操作网卡,命名空间
  • brctl: 操作网桥

The bridge knows nothing about protocols, it only sees Ethernet frames.

pipework

--net=none

namespace: /var/run/docker/netns, /var/run/netns

Other

  • OVS
  • GRE
  • VXLAN
  • SDN/OpenFlow/OVSDB
  • Weave

commands:

  • ovs-vsctl

Docker Network

  • VXLAN and Namespace
dd 于 2016-03-14 18:37 时评论:
手机屏幕失灵。手机无法使用。

发表评论