跟我学Docker(三)

前言

前面一节,我们已经发布了关于不需要手动安装,利用 Vagrant 快速搭建一个Docker 环境,本篇我们就来开撸 docker 的命令

首先进入Docker 命令环境:

$ docker version
Client:
 Version:      1.12.1
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   23cf638
 Built:
 OS/Arch:      linux/amd64

Server:
 Version:      1.12.1
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   23cf638
 Built:
 OS/Arch:      linux/amd64

校验环境完毕,下面开始命令:

1、我们可以通过直接输入docker命令来查看所有命令选项

 $ docker

2、可以通过命令docker command --help 更深入的了解指定的 Docker 命令使用方法

 $ docker pull --help

3、启动容器,以下命令使用 ubuntu 镜像启动一个容器,参数为以命令行模式进入该容器:

 $ docker run -it ubuntu /bin/bash

参数说明:
-i: 交互式操作。
-t: 终端。
ubuntu: ubuntu 镜像。
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。

要退出终端,直接输入 exit:

4、查看所有的容器命令如下

 $ docker ps -a
CONTAINER ID IMAGE  COMMAND   CREATED  STATUS  PORTS   NAMES
3fa68e33bd72 ubuntu "/bin/bash" 2 minutes ago Exited (0) 19 seconds ago compassionate_mcnulty
e4e62e90dad9 google/cadvisor:latest   "/usr/bin/cadvisor -l"   3 days ago          Up 3 days                   0.0.0.0:8080->8080/tcp   cadvisor

5、使用 docker start 启动一个已停止的容器

 $ docker start 7be73b5b726f

6、后台运行

 $ docker run -itd --name ubuntu-test ubuntu /bin/bash

7、停止容器的命令如下:

 $ docker stop 3fa68e33bd72

8、停止的容器可以通过 docker restart 重启:

 $ docker restart 7be73b5b726f

9、进入容器,在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:

  • docker attach
  • docker exec:推荐大家使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止。

attach 命令

下面演示了使用 docker attach 命令。

$ docker attach 7be73b5b726f

注意: 如果从这个容器退出,会导致容器的停止。

exec 命令

 $ docker exec -it 7be73b5b726f /bin/bash

注意: 如果从这个容器退出,不会导致容器的停止,这就是为什么推荐大家使用 docker exec 的原因。

10、导出容器docker export 命令。

$ docker export 7be73b5b726f > ubuntu.tar

11、可以使用 docker import 从容器快照文件中再导入为镜像,以下实例将快照文件 ubuntu.tar 导入到镜像 test/ubuntu:v1:

$ cat docker/ubuntu.tar | docker import - test/ubuntu:v1

12、删除容器使用 docker rm 命令:

$ docker rm -f 7be73b5b726f

删除容器时,容器必须是停止状态,否则报错

13、下面让我们来介绍一个有用的

$ docker pull nginx
#主机端口 81 映射到 nginx 80
$ docker run -d -p 81:80 nginx
#访问主机 81 端口
$ curl localhost:81

此时我们用 docker ps 命令查看,可以看到 端口的映射信息

除了使用上述方式外,docker 还提供了下面这种方式

14、使用 docker port 可以查看指定 (ID 或者名字)容器的某个确定端口映射到宿主机的端口号。

$ docker port ad013a6510f8
80/tcp -> 0.0.0.0:81

15、docker logs [ID或者名字] 可以查看容器内部的标准输出。

$ docker logs -f ad013a6510f8

-f:docker logs 像使用 tail -f 一样来输出容器内部的标准输出。

16、docker top 来查看容器内部运行的进程

$ docker top ad013a6510f8
OK 今天 就整体介绍下 容易命令使用,下一节 我们再进一步 深入分析~~~

你可能感兴趣的:(跟我学Docker(三))