Docker常用的命令

Docker常用的命令

一、帮助启动类命令

#启动docker:
systemctl start docker
#停止docker: 
systemctl stop docker
#重启docker: 
systemctl restart docker
#查看docker状态: 
systemctl status docker
#开机启动docker: 
systemctl enable docker
#查看docker概要: 
docker info
#查看docker总体帮助文档: 
docker --help
#查看docker命令帮助文档: 
docker 具体命令 --help

二、镜像命令

#列出本地主机上的镜像:
docker images
#(-a:列出本地所有的镜像,含历史映像层
#-q:只显示镜像id)

#查看某个镜像
docker search 某个xxx镜像名字
#(网站:https://hub.docker.com)
#(命令:docker search [options] 镜像名
#options说明:--limit:只列出N个镜像,默认25个。
#例子:docker search --limit 5 redis)

#拉去镜像
docker pull 某个xxx镜像名字
#(下载镜像
#docker pull 镜像名字 [:TAG]
#没有TAG则默认是最新版,等价于docker pull 镜像名字 :lastest
)

#查看镜像/容器/数据卷所占的空间: 
docker system df

#删除镜像
docker rmi 某个xxx镜像名字id
(
删除单个: docker rmi -f 镜像id
删除多个: docker rmi -f 镜像名1:TAG 镜像名2:TAG
删除全部: docker rmi -f $(docker images -qa)
)

#删除虚悬镜像
docker image prune

三、容器命令

#新建+启动容器:
docker run [options] IMAGE [COMMAND] [ARG...]
#OPTIONS说明(常用):有些是一个减号,有些是两个减号
#为容器指定一个名称;
--name="容器新名字"       
#后台运行容器并返回容器ID,也即启动守护式容器(后台运行):
-d
#以交互模式运行容器,通常与 -t 同时使用:
-i
#为容器重新分配一个伪输入终端,通常与 -i 同时使用:
-t
#启动交互式容器(前台有伪终端,等待交互);
-P: 随机端口映射,大写P
-p: 指定端口映射,小写p
#例:启动交互式ubuntu:docker run -it (--name=jacson) ubuntu /bin/bash(或者是bash)

#罗列出容器:
docker ps [option]
#(option说明:-a:列出当前所有运行的容器+历史上运行过的
#-l:显示最近创建的容器
#-n:显示最近n个创建的容器
#-q:静默模式,只显示容器编号
#-d:后台启动,启动守护式容器
)

#退出容器:
1、exit(run进去容器,exit退出,容器停止)
2、ctrl+p+q(run进去容器,ctrl+p+q,容器不停止)

#重启已停止运行的容器:
docker start 容器id或容器名

#重启容器:
docker restart 容器id或容器名

#停止容器:
docker stop 容器id或容器名

#强制停止容器:
docker kill 容器id或容器名

#删除已停止的容器:
docker rm 容器id或容器名  
#(强制删除的话加-f)
#(一次性删除多个容器实例
#docker rm -f $(docker ps -a -q)
#docker ps -a -q | xargs docker rm
#)

#清除掉没有用或停掉的容器,释放内存
docker system prune
#查看容器日志:
docker logs 容器id

#查看容器内运行进程:
docker top

#查看容器内部细节:
docker inspect 容器id

#运行的容器并以命令行交互:
#重新进入退出的容器:
docker exec -it 容器id bashShell 
#重新进入:
docker attach 容器id
#(以上两者的区别:
#1、attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器停止
#2、exec是在容器中打开新的终端,并且可以启动新的进程。用exit退出,不会导致容器的停止
#推荐使用docker exec命令。因为退出容器终端,不会导致容器停止#把容器内文件拷贝到主机上
docker cp 容器id:容器内路径 目的主机路径

#导入和导出容器:
#export导出容器内容留作为一个tar归档文件[对应import命令]
docker export 容器id > 文件名.tar
#import从tar包中的内容创建一个新的文件系统再导入为镜像[对应export]
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号

#docker镜像commit操作
docker commit提交容器副本使之成为一个新的镜像
docker commit -m="提交的描述信息" -a="作者" 容器id 要创建的目标镜像名:[标签名]

#自定义网络:
#例
docker network creatte --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet

#容器使用自定义网络:
docker run -d -P --network 自定义网络名 ( 提前创建)

#跨网络连接别人就用。 把 tomcat 加入到 mynet 网络
docker network connect [ OPTIONS] NETWORK CONTAINER
#例
docker network connect mynet tomcat

在这里插入图片描述
注意事项:

需要下载的东西去hub.docker.com这个网站里搜。
Docker镜像层都是只读的,容器层是可写的,
docker run 默认是前台启动
在挂在到某个容器的时候,其挂载的目录下的内容会被覆盖为空。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值