浅谈Docker 客户端和守护进程

Docker 守护进程

sudo docker daemon & 即可 启动docker 守护进程

sudo docker daemon Chelp 查看帮助

其中

    --label  设置标签
        sudo docker info 可以查看到label选项

    -H  指定docker守护进程的socket,可以是:
        tcp://host:post
        unix:///patch/to/socket
        fd://* or fd://socketfd

也可以设置DOCKER_HOST环境变量来设置

export DOCKER_HOST

一般都是使用 sudo server docker start 启动docker守护进程

如果使用sudo server docker start 启动docker守护进程

docker 守护的进程配文件位置在

/etc/default/docker

其中 DOCKER_OPTS 可以填入 sudo docker daemon Chelp 中的选项

对应的docker客户端也可以指定 -H 连接docker守护进程的socket

例如:

docker -H tcp://127.0.0.1:2375 run -it ubuntu:14.04 /bin/bash

容器的基本操作

启动容器

sudo docker run ubuntu echo “hellow”

启动交互式容器

sudo docker run -i -t ubuntu /bin/bash
  1. -i Cinteractive=true
  2. -t Ctty=true

查看容器

sudo docker ps [-a ]|[ -l]
  1. -a 列出所有的容器
  2. -l 列出最新创建的一个容器

CONTAINER ID

容器启动时建立的唯一ID

NAME

自动建的容器的名字

sudo docker inspect CONTAINER ID or NAME

检查容器

自定义容器名

sudo docker run --name=名字 -i -t ubuntu /bin/bash

重新启动停止的容器

sudo docker start [-i] NAME

删除停止容器

sudo docker rm NAME

守护式容器

启动守护式容器

交互式容器以 Ctrl+P Ctrl+Q 退出容器

或者

直接启动守护守护式容器

docker run -d CONTAINER ID or NAME

进入容器

docker attach CONTAINER ID or NAME

查看容器日志

docker logs [-f] [-t] [--tail] CONTAINER ID or NAME
  1. -f Cfollows=true|false 默认false 一直跟踪
  2. -t Ctimestamps=true|false 默认false 在返回的结果上加上时间
  3. Ctail=”all” 返回结尾处多少数量的日志

查看容器内进程

docker top CONTAINER ID or NAME

在运行中的容器内启动新的进程

docker exec [-d] [-i] [-t] CONTAINER ID or NAME [COMMAND] [ARG ...]

停止守护式容器

docker stop CONTAINER ID or NAME
docker kill CONTAINER ID or NAME

设置容器的端口映射

docker run [-P] [-p]

-P Cpublish-all=true|false 默认false

docker run -P -i -t ubuntu /bin/bash

为容器暴露的所有端口进行映射

-p Cpublish=[]

docker run -p 80 -i -t ubuntu /bin/bash

只指定要映射的容器的端口,宿主机的端口是随机的

docker run -p 8080:80 -i -t ubuntu /bin/bash

同时指定宿主机端口和容器端口

docker run -p 0.0.0.0:80 -i -t ubuntu /bin/bash
docker run -p 0.0.0.0:8080:80 -i -t ubuntu /bin/bash

指定映射容器的那些端口

参考自: http://www.jikexueyuan.com/course/841.html

相关推荐