Docker核心命令

本文介绍了Docker的基本操作,包括如何下载镜像、查看和删除镜像,以及如何创建和管理容器。通过dockerpull下载镜像,dockerimages列出本地镜像,dockersearch搜索镜像,dockerrun启动容器,dockerps列出容器,dockerstop和dockerrm管理容器。Docker提供了轻量级的容器化环境,便于应用部署和管理。
摘要由CSDN通过智能技术生成

Docker核心命令_镜像命令

image-20211123220312811

 Docker运行容器前需要本地存在对应的镜像,如果镜像不存在本地,Docker会尝试先从默认镜像仓库下载(默认使用Docker Hub公共注册服务器中的仓库),用户也可以通过配置,使用自定义的镜像仓库。

镜像下载

镜像是Docker运行容器的前提。

语法格式:

docker pull 镜像名字:[tag]

注意:

如果不指定tag,则下载Docker Hub公共注册服务器中仓库的最新版本。

上面没有指定,就下载最新版本(下载比较慢)

查看镜像

列出本地主机上已有的镜像。

[root@docker ~]# docker images
REPOSITORY  TAG    IMAGE ID  CREATED  SIZE

 

参数:

  • 来自于哪个仓库,比如 ubuntu仓库。镜像的标签信息,比如14.04。
  • 镜像的ID号(唯一)。
  • 创建时间。
  • 镜像大小。

镜像的ID信息十分重要,它唯一标识了镜像。

镜像搜索

搜索远端仓库中共享的镜像,默认搜索Docker Hub官方仓库中的镜像。

docker search  [镜像名字]

参数:

可以看到返回了很多包含关键字的镜像,其中包括镜像名字、描述、星级 (表示该镜像的受欢迎程度)、是否官方创建、是否自动创建等。

删除镜像

使用镜像的标签删除镜像

docker rmi 源名字
docker rmi image id

名字就是REPOSITORY下面的内容

id写前两位就可以了!

Docker核心命令_容器命令

image-20211123222636653

当我们有了镜像,才可以创建容器, 创建一个centos容器来学习

创建容器

Docker的容器十分轻量级,用户可以随时创建或者删除容器。

 语法格式

docker create -it 镜像名字

注意:

使用docker create命令新建的容器处于停止状态,可以使用docker start命令来启动它。

列出容器

docker ps

 

参数:

  • -a: 显示未启动容器
  • -q:返回容器id号

新建并启动容器

启动容器有两种方式,一种是基于镜像新建一个容器并启动,另外一个是将在终止状态( stopped)的容器重新启动。所需要的命令主要为docker run,等价于先执行docker create命令,再执行docker start命令。

语法格式:

docker run 镜像名字 /bin/echo 'hello world'

 运行完之后容器又关闭了

Docker只是管理容器的一个工具,它不是容器,管理虚拟化的工具

Docker在后台运行的标准操作包括:

  • 检查本地是否存在指定的镜像,不存在就从公有仓库下载。
  • 利用镜像创建并启动一个容器。
  • 分配一个文件系统,并在只读的镜像层外面挂载一层可读写层。
  • 从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中去。
  • 从地址池配置一个IP地址给容器。
  • 执行用户指定的应用程序。
  • 执行完毕后容器被终止。

下面命令则启动一个bash端,运行用户交互

docker run -t -i 镜像名字  /bin/bash

参数:

其中,-t选项让Docker 分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上,-i则让容器的标准输入保持打开。

exit命令退出。

守护态运行

更多的时候,需要让Docker容器在后台以守护态(Daemonized)形式运行。用户可以通过添加-d参数来实现。

语法格式:

docker run -d 镜像名字 /bin/sh -c  "while true; do echo hello world ;sleep 1 ;done"

容器启动后会返回一个唯一的ID,也可以通过docker ps命令来查看容器信息:

docker ps

 获取容器输出信息

docker logs 容器id

终止容器

语法格式:

docker stop 容器id

处于终止状态的容器,可以通过docker start命令来重新启动:

​
docker start 容器id

此外,docker restart命令会将一个运行态的容器终止,然后再重新启动

docker restart 容器id

进入容器

在使用-d参数时,容器启动后会进入后台,用户无法看到容器中的信息。某些时候如果需要进入容器进行操作,有多种方法,包括使用docker attach命令、docker exec命令,以及nsenter工具等。

attach命令

语法格式:

docker attach 容器id

注意:

但是使用attach命令有时候并不方便。当多个窗口同时attach 到同一个容器的时候,所有窗口都会同步显示。当某个窗口因命令阻塞时,其他窗口也无法执行操作了。

exec命令

Docke自1.3版本起,提供了一个更加方便的工具exec,可以直接在容器内运行命令。例如进入到刚创建的容器中,并启动一个bash:

docker exec -it 容器id  /bin/bash

删除容器

语法格式:

docker rm 容器id

参数:

  • -f, --force=false强行终止并删除一个运行中的容器。
  • -l, --link=false删除容器的连接,但保留容器。
  • -V,--volumes=false删除容器挂载的数据卷。

退出

#如果docker容器在启动的时候没有加 -d 参数
exit # 会直接停止同期并退出
Ctrt + p + q # 容器不停止 并退出

其他命令

image-20211124150442063

查看日志

语法格式:

docker logs 容器id

参数:

  • -f, --follow 跟踪实时日志
  • --since string 显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟)
  • --tail string 从日志末尾显示多少行日志, 默认是all
  • -t, --timestamps 显示时间戳
  • --until string 显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟)

查看容器里面的进程

语法格式:

docker top 容器id

从容器拷贝文件到主机上

语法格式:

docker cp 容器id:容器内路径   目录路径

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值