最近上网看了下 docker 相关知识点,做下笔记备忘,以下主要参考网址:http://www.runoob.com/docker/docker-tutorial.html

一 基本信息

  1. Docker 是一个开源的应用容器引擎。
  2. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
  3. Docker 使用客户端 - 服务器 (C/S) 架构模式,使用远程 API 来管理和创建 Docker 容器。
  4. Docker 容器通过 Docker 镜像来创建。
  5. Docker 架构图 (按照自己理解画的,若有问题欢迎指正)

二 执行模式

  1. 交互式模式
    docker run -i -t ubuntu:15.10 /bin/bash
  2. 后台模式
    docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
各个参数解析:  
-t:在新容器内指定一个伪终端或终端,  
-i:允许你对容器内的标准输入 (STDIN) 进行交互,  
-d:让容器在后台运行。

三 关于容器的操作命令

docker ps:查看容器 ID、使用镜像、执行命令、容器名称、端口信息等
docker logs【容器 ID/容器名称】:查看容器内的标准输出
docker logs -f bf08b7f2cd89:输出容器 bf08b7f2cd89 内部的标准输出,-f 参数是让其像 tail -f 一样来输出
docker port:查看端口信息
docker port adoring_stonebraker 5000:查找 adoring_stonebraker 容器 5000 端口的绑定情况
docker top:来查看容器内部运行的进程
docker start【容器 ID/容器名称】:启动容器
docker restart【容器 ID/容器名称】:重启容器
docker stop【容器 ID/容器名称】:停止容器
docker rm【容器 ID/容器名称]】:删除容器
docker inspect:查看 Docker 的底层信息

四 关于镜像的操作命令

docker images:来列出本地主机上的镜像
docker search【镜像】:查找镜像
docker pull【镜像】:下载这个镜像
docker run -t -i ubuntu:15.10 /bin/bash:使用版本为 15.10 的 ubuntu 系统镜像来运行容器
docker pull training/webapp
docker run -d -P training/webapp python app.py

五 Docker 镜像使用

  1. 当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载。
  2. 创建镜像
    (1)更新镜像
    ① 使用镜像来创建一个容器(docker run -t -i ubuntu:15.10 /bin/bash),
    ② 在运行的容器内使用 apt-get update 命令进行更新,
    ③ 在完成操作之后,输入 exit 命令来退出这个容器,
    ④ 提交容器副本(docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2 )
    (2)构建镜像
    使用 Dockerfile 文件,通过 docker build 命令来构建一个镜像

六 Docker 容器连接

  1. 设置端口或指定网址:
    ① docker run -d -P training/webapp python app.py
    ② docker run -d -p 5001:5000 training/webapp python app.py
    ③ docker run -d -p 127.0.0.1:5001:5000 training/webapp python app.py
    ④ 然后本地通过浏览器 127.0.0.1:5001 进行访问
-P : 是容器内部端口随机映射到主机的高端口。  
-p : 是容器内部端口绑定到指定的主机端口。  
通过访问127.0.0.1:5001来访问容器的5000端口  
默认都是绑定 tcp 端口



↙↙↙阅读原文可查看相关链接,并与作者交流