docker常用命令

镜像管理:

查看镜像:docker image ls / docker images

检索镜像:docker search image 例:docker search nginx

拉取镜像:docker pull image

上传镜像:docker push image 例:docker push geekhour/hello-docker:latest

保存镜像:docker save image -o FILE / docker save image > FILE

例:docker save geekhour/hello-docker:latest > hello-docker.tar

导入镜像:docker load -i FILE 例: docker load -i hello-docker.tar

查看镜像历史:docker history image

删除镜像:docker rmi image / docker image rm image

删除不再使用的镜像:docker image prune

将文件系统导入为镜像:docker import URL/FILE

从容器创建镜像:docker commit container image

容器管理:

创建容器(仅创建,不运行):docker create image

创建并运行容器:docker run image

启动容器:docker start container

停止容器:docker stop container

重启容器:docker restart container

列出正在运行的容器:docker ps / docker container ls

列出所有容器:docker ps -a / docker container ls -a

以交互方式进入容器:docker exec -it container bash / docker attach container

导出容器:docker export container -o FILE / docker export container > FILE

导入容器快照:docker import FILE

查看容器日志:docker logs container

删除容器:docker rm container / docker container rm container

查看容器端口映射:docker port container

显示容器内进程:docker top container

复制本地文件到容器内的指定路径:docker cp FILE container:{PATH}

显示容器内的变化:docker diff container

显示容器资源使用情况:docker stats container

容器运行:

语法格式:docker run options image command arg...

创建运行并命名容器:docker run --name name image

创建一个容器并后台运行:docker run -d image

创建一个容器并指定端口映射:docker run -p hostPort:containerPort image

创建一个容器并指定端口映射(随机分配):docker run -P image

创建一个容器并指定环境变量:docker run -e key=value image

创建一个容器并指定工作目录:docker run -w PATH image

创建一个容器并指定容器名称:docker run -name name image

创建一个容器并在容器中执行命令(交互模式):docker run image command

创建一个容器,并指定容器名称、后台运行、端口映射、环境变量和工作目录:

docker run -d -p hostPort:containerPort -e key=value -w PATH --name name image

使用镜像nginx:latest来启动一个容器,并在容器内执行交互模式 bash shell:

docker run -it nginx:latest /bin/bash

创建一个mysql容器,后台模式启动,主机3306端口映射到容器3306端口,主机/data目录映射到容器/data目录:

docker run -it -p 3306:3306 -v /data:/data -d mysql:latest

网络管理:

列出可用网络:docker network ls

查看网络详细信息:docker network inspect network

创建一个新的网络:docker network create network

删除一个网络:docker network rm network

将容器连接到网络:docker network connect network container

将容器从网络断开:docker network disconnect network container

插件管理:

列出插件:docker plugin ls

安装插件:docker plugin install plugin

启用插件:docker plugin enable plugin

禁用插件:docker plugin disable plugin

卸载插件:docker plugin rm plugin

数据卷管理:

创建一个数据卷:docker volumn create volumn

查看数据卷:docker volumn ls

查看数据卷详细信息:docker volumn inspect volumn

删除数据卷:docker volumn rm volumn

删除所有未使用的数据卷:docker volumn prune

日常操作:

查看docker系统信息:docker info

查看docker版本:docker version

查看docker帮助文档:docker --help

查看docker命令帮助:docker command --help

登录/退出dockerHub:docker login/logout

常用Dockerfile指令:

指定基础镜像,必须为Dockerfile的第一条指令:FROM base_image

用于将文件复制到镜像中,源可以是URL或者本地文件,也可以是一个压缩文件(自动解压):

ADD

用于将文件拷贝到镜像中,源只能是本地文件:

COPY --chown=\:\ 源路径 目标路径

用于指定工作目录,可以使用多个WORKDIR指令,如果使用相对路径,则是相对于上一条WORKDIR指令所指定的目录:

WORKDIR PATH

用于设置环境变量:

ENV <key> <value> / ENV <key1>=<value1> <key2>=<value2> ....

用于指定默认的容器主进程,每个Dockerfile中只能有一条CMD指令,如果有多条,则只有最后一条会生效:

CMD <命令> / CMD <"可执行文件","参数1","参数2"....>

用于定义匿名卷(持久化目录):VOLUMN <路径> / VOLUMN "路径1","路径2".....

相关推荐
腻害兔2 小时前
【若依项目-产品经理视角】深度拆解 RuoYi-Vue-Pro 商城模块:从商品管理到交易引擎,50 张表撑起一整套电商系统
java·大数据·vue.js·产品经理·ai编程
码智社3 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
萧瑟余晖4 小时前
JDK 26 新特性详解
java·开发语言
马优晨5 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
维天说7 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
Zane19948 小时前
并发 vs 并行:别再傻傻分不清了,一文讲透 Java 并发编程的第一课
java·后端
噢,我明白了9 小时前
java中Excel的导入和导出(EasyExcel)
java·开发语言·excel
吠品9 小时前
Zabbix Web界面误报Server未运行的排查与解决
java·服务器·数据库
啊湘9 小时前
天气查询API接口 按月Token鉴权 实时天气 物联网可用 文档齐全
java·后端·struts
Java内核笔记9 小时前
告别十亿美元的错误 : Spring Boot 4 空安全 (JSpecify) 实战
java·spring boot·后端