01.基本介绍

Docker命令参考文档

image.png


帮助命令

image.png

docker帮助命令

#docker 版本信息
docker version

#docker 系统信息
docker info

#docker 命令解读(不输入command展示所有命令)
docker [command] --help 
  

2.F5:下载,启动,修改,保存,分享
Mission:拉取Nginx,修改页面并发布出去

image.png


●使用docker [操纵] --help 可以查看相关命令用法


2.1下载镜像


检索镜像 docker search(不推荐)


●镜像名 描述 人气 官方性

直接去官网搜索下载(推荐):


dockerhub官方网站,记得翻墙



docker search 报错:Error response from daemon: Get "https://index.docker.io/v1/search?q=nginx&n=25": dial tcp 208.77.47.172:443: connect: connection refused
报错解决:

Error response from daemon: Get “https://index.docker.io/v1/search?q=nginx&n=25“:-CSDN博客


查看镜像docker images


●语法: docker images [option]

镜像名              版本标签      镜像ID(唯一标识)      创建时间            大小

option说明

-a,all:    展示所有镜像
-q,quite:  只展示镜像ID


拉取镜像 docker pull


语法: docker pull image[:tag]

●拉取报错:Error response from daemon: Get “https://registry-1.docker.io/v2/“:
问题解决:重新配置镜像加速器
 

拉取说明

#拉取镜像
docker pull nginx

#拉取指定版本镜像
docker pull nginx:1.26.0

本机运行结果:

image.png


镜像删除docker rmi


●语法: docker rmi [option] image:tag

#注意要是完整标签: 
docker rmi nginx:latest

#推荐使用其唯一镜像ID 删除:  
docker rmi 3f8a4339aadd

#option说明,-f:全部删除
#$(docker images -aq) 即取得所有镜像ID集合
docker rmi -f $(docker images -aq)
 



2.2启动容器


运行容器docker run
●语法:docker run [option] image[:tag] [command] [arg...]

option说明

--name: 为容器指定一个名称;
-d: 后台运行容器,并返回容器ID,也即启动守护式容器;
    非后台运行会阻塞控制台
    常见坑:当后台运行容器时,若容器没有提供服务,则会自动停止
-i,-t,-it:以交互模式运行容器;为容器重新分配一个伪输入终端;二者通常同时使用;
           交互方式运行,进入容器内部查看内容
           exit:停止容器并从退回主机
           ctrl + p + q:不停止容器退出


-p: 端口映射,-p标志用于指定端口映射,它允许你将容器内的端口映射到镜像端口,即
    运行Docker的机器上的端口。这是为了让外部网络能够访问在Docker容器内运行的服务
    端口映射可以提高安全性,因为可以只公开必要的端口,而非公开容器内的所有端口。
    映射有以下格式
      -p ip:主机端口:容器端口 
      -p 主机端口:容器端口(常用)
      -p 容器端口
      容器端口
      

      
-P: 随机端口映射;
-w: 指定命令执行时,所在的路径

例如:
docker run -d --name nignx -p 80:80 nginx
后台运行最新版本nginx ,容器名字定义为nginx,镜像,容器端口都是80



●端口映射:

image.png


●不写tag默认最新版本,command和arg为默认配置一般不写
●ctrl + c 终止运行
本机运行结果:

image.png


停止容器docker stop


●语法: docker stop [option] container [container]

option说明

-t, --time int:这个选项指定在发送 SIGTERM 信号后等待容器停止的秒数。
容器中的应用程序可以捕获SIGTERM信号并执行清理操作,如保存状态、关闭连接、释放资源等再退出
如果在指定的时间内容器没有停止,那么 Docker 将发送 SIGKILL 信号来强制停止容器。
默认情况下,docker stop 会等待 10 秒。

#container自己停止或20秒后强制停止,不使用-t默认10秒
docker stop -t 20 container

[container]
同时操作多个容器


 


本机运行结果:

image.png


强停容器docker kill


●语法: docker stop [option] container
●直接发送SIGKILL信号到容器的主进程,这会立即终止容器,不给容器中的进程任何清理和退出的机会。适用于容器无响应或者需要快速停止容器。


查看运行容器docker ps
●语法:docker ps [option] container

image.png


●容器id 镜像名 容器默认命令 创建时间 启动状态(up即成功) 占用端口 应用容器名(随机)
●容器的操作(container)只能是容器名或容器ID(非镜像名),若可以唯一识别,可以只使用ID前几位数字

image.png

option说明


-d:  查看正在运行容器
-a:  查看所有容器(包括已经停止的)
-n=?:展示最近运行的?个容器
-q:  只显示id


本机运行结果:

image.png


删除容器docker rm


语法:docker rm [option] container [container]
●不能删除运行中的容器,除非option选用-f
●同理,删除所有镜像: docker rmi -f $(docker ps -aq)
本机运行结果:

1184e6880896ab6b428718f709667ba9.png


启动容器docker start


●语法:语法: docker restart container [container]
●启动停止的容器,若已经启动或者已经删除则无效
本机运行结果:

496b4d9ac969875049b0cb5d6ef77a31.png


重启容器docker restart


●语法: docker restart container [container]
●关闭的则启动,启动的则重启

查看容器状态docker stats


语法: docker stats container
●展示容器占用的cpu内存情况

image.png


●ctrl + c 退出

查看容器日志docker logs


●语法:docker logs [option] container

image.png


啥都没干,没有日志


查看容器进程信息docker top


●语法:docker top container


2.3修改配置


进入容器docker exec/attach


●语法:docker exec -it container bashShell

docker exec

#前置工作,启动并改名:docker run -d --name nginx -p 80:80 nginx
#命令以与控制台(/bin/bash)交互(-it)的形式进入容器nginx(已经取容器名为nginx)
docker exec -it nginx /bin/bash
或者
docker exec -it nginx bash

#exec进入容器并开启新终端并操作,更常用

exec进入容器并展示目录结构,然后退出:

image.png

●注意,无法通过vi编辑器操作容器中的文件,容器只存在一些运行必备的资源

语法:docker attach container
●进入容器正在执行的终端


从容器内复制文件到主机


语法:docker cp container:容器文件路径 主机路径
●不需要容器运行,只要容器没被删除,就可以copy


2.4保存镜像


镜像提交docker commit


语法:docker commit [option] image [repository[:tag]]

参数说明

#将容器修改好的配置信息打包上传到主机
docker commit container

#option
-a:指定作者
-c:改变的列表
-m:打包信息
-p:打包期间暂停运行

#repository[:tag]
指定镜像名[和版本号]

13ca6decfcbf3443f4ecef1d0957928c.png



镜像保存docker save
●语法:docker save [option] image[:tag]

-i:指定压缩包路径,自动读取,根据压缩包产生镜像
docker load -i mynginx.tar

 

image.png


镜像加载docker load


语法:docker load [option]

-i:指定压缩包路径,自动读取,根据压缩包产生镜像

docker load -i mynginx.tar

●展示当前已经保存的压缩包和镜像,将镜像删除,然后从压缩包中加载回镜像

image.png


2.5分享镜像


先确保自己登陆了dockerhub
dockerhub官方网站,记得翻墙


docker login


●登陆后输入网站对应的用户名或邮箱和密码
登录报错:

image.png


https://www.yuque.com/taijuanlebaai/fh01mx/nz5pebfyfhkhticp?singleDoc#Qo4RI

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐