docker的基本使用 - 1990bingliu/Docker GitHub Wiki

运行一个容器并返回结果

sudo docker run ubuntu:16.04 /bin/echo "hello world"

Unable to find image 'ubuntu:16.04' locally
16.04: Pulling from library/ubuntu
f7277927d38a: Pull complete 
8d3eac894db4: Pull complete 
edf72af6d627: Pull complete 
3e4f86211d23: Pull complete 
Digest: sha256:97b54e5692c27072234ff958a7442dde4266af21e7b688e7fca5dc5acc8ed7d9
Status: Downloaded newer image for ubuntu:16.04
hello world

各个参数解析:

docker: Docker 的二进制执行文件。

run:与前面的 docker 组合来运行一个容器。

ubuntu:16.04指定要运行的镜像,Docker首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。

/bin/echo "Hello world": 在启动的容器里执行的命令

运行交互式的容器

root@bing-box:~$ docker run -i -t ubuntu:15.10 /bin/bash
root@f9f655263b85:/# ls
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr

各个参数解析:

-t:在新容器内指定一个伪终端或终端。

-i:允许你对容器内的标准输入 (STDIN) 进行交互。

我们可以通过运行exit命令或者使用CTRL+D来退出容器。

后台模式启动容器

ctrl+alt+t 打开一个新终端

docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
c54cdce82c149bdf18ef6b53a0b1fb126f8622074b1eb2a9a738761232b9d44a

参数 -d 后台运行 返回的c54cdce82c1~ 为容器id,可以通过这个id查看容器发生了什么.

docker容器的相关操作

查看docker当前正在运行的容器 docker ps

sudo docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
c54cdce82c14        ubuntu:15.10        "/bin/sh -c 'while t…"   11 minutes ago      Up 11 minutes                           keen_driscoll
f9f655263b85        ubuntu:16.04        "/bin/bash"              21 minutes ago      Up 21 minutes                           reverent_sutherland

说明: CONTAINER ID:容器IDNAMES:自动分配的容器名称

查看某个容器发生了什么其标准输出有内容 docker logs [<CONTAINER-ID>|<NAMES>]

sudo docker logs c54cdce82c14

可用id,也可以用name

停止容器 docker stop [<CONTAINER-ID>|<NAMES>]

⚠️ **GitHub.com Fallback** ⚠️