docker常用命令

常用命令


1、搜索镜像 $ docker search java

- NAME : 镜像名称 - DESCRIPTION : - STARS : 镜像仓库收藏数 - OFFICIAL : 是否为官方文档 - AUTOMATED : 是否是自动构建的仓库

2、下载镜像 使用 docker pull 命令下载镜像。 如果要指定版本请在命令后面加冒号 <:version> $ docker pull java:8

如果是个人镜像,需要使用 #docker pull 用户名/仓库名

3、 列出镜像 $ docker images

4、删除本地镜像 $ docker rmi java


容器相关命令

1、新建并启动容器 使用 docker run 命令 新建并启动一个容器。

-d 选项:后台运行

-P 选项:注意是大写的,随机端口映射

-p 选项:指定端口映射,有4种格式

    --ip:hostPost: containerPort

    --ip : containerPort

    -- hostPort:containerPort

比如 docker run -d -p 127.0.0.1:80:80 我们将容器内的80端口绑定到特定IP的80端口 或者docker run -d -p 127.0.0.1::80 绑定到特定IP的随机端口 -- containerPort - network选项,指定网络模式,有下列可选参数 -- network=bridge 默认选项,连接到默认的桥接 -- network=host 容器使用宿主机网络 -- network=containerName-or-ID 告诉Docker 让新建的容器使用已有的容器的配置

-v 挂载卷 -link 创建2个容器间的客户服务链接 Docker1.9 之前容器通信使用。之后不推荐。缺点是 Docker不能链接位于不同宿主机的容器Nginx 镜像 # docker run -d -p 91:80 nginx 启动一个nginx 容器,

-d 后台运行

-p 宿主机端口:容器端口 描述:开放容器端口到宿主机端口

使用 # ip addr 查看容器ip

docker run 命令在创建容器的时候,会先检查本地是否有指定的镜像,如果没有就从 Docker hub 下载一个新镜像。


Ubuntu 镜像(容器内部操作) # docker run -i -t ubuntu /bin/bash -t 伪tty 终端 -i 保证容器得 STDIN 是开启得 /bin/bash 命令启动了一个 Bash shell

注意圈出得地方,使用-t 伪造了 tty,然后在容器运行后直接进入到了容器内部(Docker 建议非必须,不要操作容器,而是使用 Dockerfile 文件命令) 1、 ef4aea4fa736 代表得是容器得ID 使用 # hostname 命令也可以获取 2、 查看 hosts 文件 # cat /etc/hosts 文件

Docker 给该容器得 IP 地址添加了一条 主机配置项

不管是Nginx 容器还是 ubuntu 容器, 都拥有自己的网络,IP地址,以及一个用来和宿主机进行通信得桥接网络接口。


2、 列出容器 # docer ps

如果需要列出所有的镜像,需要加 -a。之前的Java 是镜像 - CONTAINER ID : 容器名称 - INAGE : 镜像名称 - COMMAND: 启动容器运行时的命令 - STATUS: 容器的创建时间 up 代表启动 - PORTS: 对外的端口号 - NAMES: 容器名称,由 Docker 默认生成,也可以使用 docker run 命令的 --name 选项指定

3、容器命名 # docker run --name haoming_container_nginx -i -t nginx -- name 别名 -t tag

4、停止容器 使用 docker stop 命令。 # docker stop b8d47eaa6588 b8d47eaa6588 是容器 ID,也可以使用 docker stop 容器名称 来指定容器

:下面同情况 5、强制停止容器 使用 docker kill 命令发送 SIGKILL 信号来强制停止容器 # docker kill ID

6、启动已经停止的容器 使用 docker run 命令是新建并且启动,使用 docker start 命令 启动 # docker start ID 由于某种错误导致容器停止得,可以使用 --restart 标志,自动重启 # docker run --restart=always always表示总是重启,还有 on-failure参数,表示只有退出代码是非0时才重启。on-failure 还可以指定重启次数 --restart=on-failure:5

7、查看容器的所有信息 # docker inspect ID 也可以使用 -f 或者 --format 标志来选定结果 比如 # docker inspect --format='{{ .State.Running}}' daemon_dave # docker inspect --format='{{ .Driver}}' daemon_dave 8、查看容器日志 # docker container logs ID

9、 查看容器里的进程 #docker top ID

#问?是否可以通过 容器的IP 和 容器的对外端口访问容器 宿主机访问

10、进入容器 # docker container exec -it ID /bin/bash

容器内部 是简单的 Linux 系统 Nginx 默认目录在 cd /usr/share/nginx/html/

11、退出容器 # exit

12、守护式容器 守护式容器没有交互式会话,非常适合运行应用程序和服务。 大多时候我们都需要以守护式来运行我们得容器 # docker run --name daemon_dave -d ubuntu /bin/bash -c "while true; do echo hello world; sleep 1; done" -d 后台运行 -c shell 命令

12.1 查看容器内部日志 # docker logs daemon_dave

也可以使用 -f 实时输出 与 tail -f 类似 既然有 -f, 那么 tail -n 也应该有 # docker logs --tail 10 daemon_dave 获取最后10行

13、日志驱动 --log-driver 可以在启动容器得时候添加 可用得选项包括 默认得 json-file,json-file 为前面得 docker logs命令提供了基础 其他可用得选项还包括 syslog,该选项将禁用 docker logs 命令,并将容器所有得日志都重定向到 Syslog 14、查看容器内进程 # docker top daemon_dave

15 统计容器得使用情况 # docker status <ID or name> <ID or name> <ID or name>

16 、容器内部运行进程 在Docker 1.3 之后,可以通过 docker exec 命令在容器内部额外启动新进程 比如 # docker exec -d daemon_dave touch /etc/new_config_file 解释:在容器内部创建一个空文件,通过 docker exec 后台命令,可以在运行得容器中进行维护,监控和管理 # docker exec -t -i daemon_dave /bin/bash -t 创建 tty -i 捕捉STDIN

17、删除容器 # docker rm ID 从 Docker 1.6.2 开始,可以通过 docker rm -f 来删除运行中得容器,之前得版本必须要先 stop 或者kill 才能删除 删除所有容器 # docker rm 'docker ps -a -q' -a 列出所有得容器 -q 表示只返回容器得ID

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值