《The Docker Book》读书笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/conanswp/article/details/52215872

《The docker book》英文版


chap 01 简介
1.Docker组件:
1)Docker客户端和服务器:C/S架构,RESTful API。
2)Docker镜像:基于镜像管理容器。
3)Registry:用来保存用户构建的镜像。分为公有和私有。
4)Docker容器;运行进程用。


chap 02 Dock安装
1.Ubuntu 16.04下安装命令如下:
###添加docker到source.list中###
#>sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
###安装curl(如果没有安装)###
#>apt-get install curl
###更新软件源###
#>apt-get update
###安装docker###
#>apt-get install lxc-docker
###检查是否安装成功###
#>docker info

###升级###
#>apt-get update
#>apt-get install lxc-docker
2.docker默认启动,并监听/var/run/docker.sock文件。使用-H命令指定监听的端口和文件,-d命令指定daemon模式,例如:
#>docker -d -H tcp://0.0.0.0:1234 -H /home/docker.sock
或者设置环境变量:

#>export DOCKER_HOST="tcp://0.0.0.0:1234"


chap 03 Docker入门
1.查看docker信息:docker info
2.pull一个镜像,cc3c21888a6d表示容的ID。
#>docker pull ubuntu:latest
cc3c21888a6d: Pull complete
3.运行一个容器,-i打开stdin输入,-t打开一个终端(可以这么理解)
#>docker run -i -t ubuntu:latest /bin/bash
4.退出容器exit,查看容器:docker ps -a(-a显示所有容器,包括停止和正在运行,去掉-a显示正在运行的容器)
5.命名一个container:docker run -i -t --name container1 ubuntu:latest /bin/bash
命名后可以根据名字启动、停止、连接:docker start/stop/attach container1
6.-d参数运行daemon进程,-c参数指定运行的命令,例如:
docker run -i -t -d --name container1 /bin/sh -c "while true;do echo hello world; sleep 1; done"
7.查看log(-f查看尾部,类似于tail;-t显示时间):docker logs -ft container1
8.查看运行信息:docker top container1
9.查看详细信息:docker inspect container1
10.删除容器:docker rm container1或者docker rm `docker ps -a -q` (-q用于进提取信息中的Name)

chap 04 Docker 镜像
1.列出所有镜像:docker images 位于/var/lib/docker文件中;镜像有name和tag构成。
2.获取一个镜像:docker pull imageName:tag
3.查询镜像:docker search name
4.创建镜像的方法:
A.docker commit(not recommend):类似于version control system
登录docker:docker login
创建一个容器:docker run -i -t --name gunnerContainer ubuntu:latest /bin/bash
安装一些软件...
提交容器和镜像:docker commit gunnerContainer repository/imageName;此外,-m添加描述信息,--author显示提交作者,repository/imageName后使用冒号跟TAG。
查看镜像:docker images repository/imageName 或者 docker inspect respository/imageName
运行自己镜像:docker run -i -t repository/imageName /bin/bash
B.docker build -t gunner/nginx:v1 .
#version 0.0.1
FROM ubuntu:latest
MAINTAINER gunner arsenal "conanswp@163.com"
RUN apt-get update
RUN apt-get install -y nginx
RUN echo "Hi, I'm your container">/usr/share/nginx/html/index.html
EXPOSE 80
5.查看镜像
#>docker images [image]
#>docker history image
docker run时,-p执行开放和映射的端口:[8080]:80(将host的8080端口映射到container中的80端口)。-P自动绑定。
#>sudo docker run -d -P --name static_web gunner/nginx nginx -g "daemon off;"
查看绑定的端口(绑定到Dockerfile中EXPOSE的端口)
#docker port static_web
查看nginx信息
#curl 0.0.0.0:32768
6.删除镜像
#>docker rmi image
7.运行一个仓库
#>docker run -p 5000:5000 registry



展开阅读全文

没有更多推荐了,返回首页