【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号

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

相关推荐
linweidong10 分钟前
解锁 Ray 在 Kubernetes 上的弹性伸缩:打造高效、稳定的分布式作业
分布式·容器·kubernetes·ray·keda·autoscaling·ray推理
咖啡Beans18 分钟前
Docker安装ELK(Elasticsearch + Logstash + Kibana)
后端·elasticsearch·docker
智能化咨询2 小时前
Docker 容器化部署核心实战——Nginx 服务配置与正反向代理原理解析
docker
有谁看见我的剑了?6 小时前
k8s-init容器学习
学习·容器·kubernetes
人工干智能9 小时前
科普:在Windows个人电脑上使用Docker的极简指南
windows·docker·容器
lllsure9 小时前
【Docker】容器
运维·docker·容器
烟雨书信13 小时前
LINUX中Docker Swarm的介绍和使用
java·linux·docker
有谁看见我的剑了?14 小时前
k8s-Sidecar容器学习
学习·容器·kubernetes
傻傻虎虎16 小时前
【Docker】容器端口暴露+镜像生成实战
java·docker·容器
小雪_Snow16 小时前
在 Docker 中安装 MySQL 教程
docker