【docker】基础操作命令

docker run:干两步,本地找一下有没有集装箱,有运行,没有远程仓库下载运行。还没有报错。

docker好处:

  • 不需要进行物理层模拟,不需要hypervisor
  • 利用的内核是宿主机的内核,不需要重新加载Linux内核

镜像相关命令

docker images:展示目前本地所有镜像

options:

复制代码
1. -a 本地所有
2. -q 只显示镜像id



docker search 镜像名称

options:

复制代码
1. --limit: 只列出N个镜像默认25
参数 说明
NAME 镜像名称
description 镜像说明
STARS 点赞数量
OFFICIAL 是否官方
AUTOMATED 是否自动构建

docker pull 镜像名称:TAG

将远程镜像拉到本地。没有tag就是最新版本,latest。

可以存在不同版本的镜像。

docker system df

查看镜像/容器/数据卷所占用的空间

docker rmi

删除某名字id的镜像:

  1. -f 镜像ID 只删除一个
  2. -f 镜像1:tag 镜像2:tag 删除多个
  3. -f $(docker images -qa)全部删除

虚悬镜像:指的是repository与TAG 都是为的镜像

一般没啥用删掉就行。

容器命令

docker run options image command arg...

options:

复制代码
1. --name="容器名称"
2. -d 后台运行容器并且返回容器ID
3. -i 以交互式模式运行容器通常与-t一起使用
4. -t 为容器分配一个伪输入终端,启动交互式容器 
5. -P 随机端口映射
6. -p 设置IP以及端口号, IP:port

e.g:

在docker里面构造一个Ubuntu容器

docker run ubuntu -it /bin/bask

后面的/bin/bask表示需要使用Ubuntu里面的shell脚本

容器停止

  1. run 进入容器之后,输入exit退出,容器停止
  2. 按ctrl+p+q退出容器,但容器集训运行

docker start/restart/stop/kill 容器ID或者容器名称

启动已经停止的/重启/停止/强制停止容器

docker rm 容器ID删除容器

删除多个:

  1. docker rm -f $(docker ps -aq)
  2. docker ps -aq | xargs docker rm

守护式运行模式执行:

docker run -d 容器的名称

守护式容器即在后台进行运行,不会像-it在前端有任何显示。

但可能目前docker有可能会杀死后台运行的容器,认为没有交互他就有可能杀死

所以开启之后,进行docker ps 查看一下。

docker logs 容器id

查看容器日志

docker top 容器ID

查看容器内运行的进程

docker inspect 容器ID

查看容器内部细节

如果想重新回到后台运行的容器有两种方式,但是有一些区别

  1. docker exec -it 容器id bashShell
  2. docker attach 容器ID

他们之间的区别是,exec是相当于新开辟了一个交互界面,所以在exit之后,对原本的容器不会有太大的影响。

但是attach是没有开辟,相当于把原来的访问再次调用出来,在exit之后,如果没有前端访问,docker就会把这个容器停止。

将容器内的文件拷贝到主机上

docker cp 容器ID:容器内部路径 目的主机路径

导入导出容器:

  1. 将目前的容器打包:docker export 容器ID > 文件名.tar
  2. 将已有的tar包导入: cat 文件名.tar | docker import - 你想起的镜像用户/镜像名称:TAG号

然后就可以看到自己多了一个导入的镜像

相关推荐
Alsn869 小时前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
2601_9618752411 小时前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant
java_cj11 小时前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
程序员老赵12 小时前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops
杨浦老苏12 小时前
轻量级Docker仪表板Servedash
运维·docker·监控·群晖·仪表板
正经教主12 小时前
【docker基础】 第八周:容器监控与应用更新策略
运维·docker·容器
kiros_wang13 小时前
Docker 使用完整指南
运维·docker·容器
正经教主13 小时前
【docker基础】第九周:Docker安全与镜像优化
运维·docker·容器
CodeStats15 小时前
【虚拟机】 从 CPU 指令到虚拟机隔离:虚拟机就是一个“模拟了完整硬件的普通进程”
java·docker
ai产品老杨16 小时前
突破安防碎片化:基于 Docker 与边缘计算的 AI 视频智能化中台,如何通过 GB28181/RTSP 统一接入与全套源码交付实现二次开发自由?
人工智能·docker·边缘计算