0
点赞
收藏
分享

微信扫一扫

关于Docker入门的一些事(3)

非衣所思 2022-03-30 阅读 54
docker

这篇写一下docker的一些常用命令。

1.帮助命令

#显示docker当前的版本信息

docker version      #显示docker当前的版本信息

docker info         #显示docker的系统信息,包括镜像和容器的数量

docker 命令 --help

也可以在Docker官方进行查询命令帮助,地址为:Reference documentation | Docker Documentation  。

2.镜像命令

docker images  #查看当前本地主机上的镜像
-a 列出所有镜像
-q 只显示镜像的id
docker search #搜索镜像
例:docker search mysql  #搜索镜像名包含mysql的镜像
--filter=STARS=3 点赞星数不小于3的镜像
docker search --filter is-official=true --filter stars=3 nginx
is-official是否官方镜像
is-automated是否自动构建
docker pull #下载镜像(拉取)
例如:docker pull mysql  #后面可以加tag参数,如果不加则默认拉取最新版本(latest)

指定版本下载,docker pull mysql:5.7
注:版本号需确定有

 Digest防伪签名。有的有docker.io,为真实地址,等价于镜像名。

docker pull采用分层下载。

docker rmi #删除镜像
可使用docker rmi -f id号  删除镜像
注:后面还可以加REPOSITORY或TAG来删除,-f是强制删除的意思
若想删除所有镜像,可使用docker rmi -f $(docker images -aq)  #查找出所有镜像并删除
可使用docker rmi -f  镜像id  镜像id  镜像id 来删除多个镜像

docker system df
磁盘空间大小总览

插入一个面试问题:何为docker的虚悬镜像?

仓库名、标签都是<none>镜像,俗称虚悬镜像(dangling images)。也有id和大小,但是空占内存。可使用命令docker images -f dangling=true列出。

3.容器命令

有镜像之后才可以创建容器。

docker run #新建一个容器并启动,后可加命令
--name="Name"  为容器指定一个名字 用于区分容器
-d             后台运行容器,并返回容器id
-it            以交互方式运行,并为容器重新分配一个伪输入终端
-P(大写)      指定容器端口
-P 主机端口:容器端口         -P 容器端口
-P ip:主机端口:容器端口     也可以直接写容器端口
-p(小写)      随机指定一个端口
例:docker run -it centos  /bin/bash
注:想退出并停止容器,使用exit命令。若想退出但不停止容器,则使用Ctrl+P+Q

docker ps #查看当前在运行的容器
-a     显示所有容器
-q     静默模式,只显示容器编号
-l     显示最近创建的容器
docker rm 容器id #删除已停止的容器
docker rm -f $(docker ps -aq) 删除所有容器
-f  强制删除
docker start 容器id  启动已停止的容器
docker restart 容器id  重启容器
docker stop 容器id  停止容器
docker kill 容器id  强制停止容器(杀死容器)

需注意的误区,docker  run  -d 容器,docker ps 发现容器自己停止了。原因在于,容器使用后台运行就必须要一个前台进程,若docker发现无前台进程,则会自动停止。

启动守护式容器(后台服务器)

大部分场景下Docker的服务需在后台运行。

docker run -d redis
此处使用-d,因为有进程存在,所以容器不会自动停止
docker logs 容器id
查看容器日志
docker top 容器id
查看容器内运行进程
docker inspect 容器id
查看容器细节
docker exec -it 容器id /bin/bash
重新进入已创建的容器
docker attach 容器id
重新进入容器

exec是在容器中打开新的终端,并且可以启动新的进程,用exit退出不会导致容器停止。

attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出会导致容器停止。

docker cp 容器id:容器内路径   目的主机路径         #容器>主机
从容器内拷贝文件到主机

export导出容器的内容留作为一个tar归档文件。

import从tar包中的内容创建一个新的文件系统再导入为镜像。

docker export 容器id > 文件名.tar   #默认为存放在当前路径
cat  文件名.tar | docker import -  镜像用户/镜像名:镜像版本号

 

举报

相关推荐

0 条评论