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

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

相关推荐
雪域迷影6 小时前
PostgreSQL Docker Error – 5432: 地址已被占用
数据库·docker·postgresql
福大大架构师每日一题7 小时前
22.1 k8s不同role级别的服务发现
容器·kubernetes·服务发现
莹雨潇潇7 小时前
Docker 快速入门(Ubuntu版)
java·前端·docker·容器
tangdou3690986558 小时前
1分钟搞懂K8S中的NodeSelector
云原生·容器·kubernetes
tangdou36909865511 小时前
Docker系列-5种方案超详细讲解docker数据存储持久化(volume,bind mounts,NFS等)
docker·容器
later_rql11 小时前
k8s-集群部署1
云原生·容器·kubernetes
漫无目的行走的月亮14 小时前
在Docker中运行微服务注册中心Eureka
docker
大G哥16 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
大道归简17 小时前
Docker 命令从入门到入门:从 Windows 到容器的完美类比
windows·docker·容器
zeruns80217 小时前
如何搭建自己的域名邮箱服务器?Poste.io邮箱服务器搭建教程,Linux+Docker搭建邮件服务器的教程
linux·运维·服务器·docker·网站