docker常用命令

bash 复制代码
docker version # 显示 Docker 版本信息。

镜像命令

bash 复制代码
docker images # 列出本地主机上的镜像
docker pull # 下载镜像
docker rmi # 删除镜像

容器命令

bash 复制代码
docker run -it centos /bin/bash # 使用centos镜像进行用交互模式启动容器,在容器内执行/bin/bash命令!
# 常用参数说明 
--name="Name" # 给容器指定一个名字 
-d # 后台方式运行容器,并返回容器的id! 
-i # 以交互模式运行容器,通过和 -t 一起使用 
-t # 给容器重新分配一个终端,通常和 -i 一起使用 
-P # 随机端口映射(大写) 
-p # 指定端口映射(小结),一般可以有四种写法,hostPort:containerPort (常用)例如:3310本机端口:3306容器中的端口
-e, --env # 设置环境变量
-v, --volume # 挂载数据卷或主机目录到容器,格式为:主机路径:容器路径,如 -v /host/data:/container/mysql/data
注:在 Docker 命令(以及大多数 Unix/Linux 命令)中,参数前的单短横线 - 和双短横线 -- 是有明确区别的,主要用于区分短选项(缩写)和长选项(完整名称),设计初衷是为了平衡命令的简洁性和可读性。

bash 复制代码
exit # 使用 exit 退出容器
ctrl+P+Q # 容器不停止退出

bash 复制代码
docker ps [OPTIONS]
# 常用参数说明 
-a # 列出当前所有正在运行的容器 + 历史运行过的容器 
-l # 显示最近创建的容器 
-n=? # 显示最近n个创建的容器 
-q # 静默模式,只显示容器编号。

bash 复制代码
启动停止容器:
docker start (容器id or 容器名) # 启动容器 
docker restart (容器id or 容器名) # 重启容器 
docker stop (容器id or 容器名) # 停止容器 
docker kill (容器id or 容器名) # 强制停止容器
bash 复制代码
删除容器:
docker rm 容器id # 删除指定容器 
docker rm -f $(docker ps -a -q) # 删除所有容器 
docker run -d 容器名 # 启动容器,使用后台方式启动
bash 复制代码
其他容器命令:
docker inspect 容器id # 查看容器/镜像的元数据
docker exec -it 容器id bin/bash # 进入正在运行的容器,是在容器中打开新的终端,并且可以启动新的进程
docker attach 容器id # 进入正在运行的容器,直接进入容器启动命令的终端,不会启动新的进程
docker commit -m="提交的描述信息" -a="作者" 容器id 要创建的目标镜像名:[标签名] # 从容器创建一个新的镜像。理解:有点像git提交代码

DockerFile指令

bash 复制代码
FROM # 基础镜像,当前新镜像是基于哪个镜像的 
MAINTAINER # 镜像维护者的姓名混合邮箱地址 
RUN # 容器构建时需要运行的命令 
EXPOSE # 当前容器对外保留出的端口 
WORKDIR # 指定在创建容器后,终端默认登录的进来工作目录,一个落脚点 
ENV # 用来在构建镜像过程中设置环境变量 
ADD # 将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包 
COPY # 类似ADD,拷贝文件和目录到镜像中! 
VOLUME # 容器数据卷,用于数据保存和持久化工作 
CMD # 指定一个容器启动时要运行的命令,dockerFile中可以有多个CMD指令,但只有最 
后一个生效! 
ENTRYPOINT # 指定一个容器启动时要运行的命令!和CMD一样 
ONBUILD # 当构建一个被继承的DockerFile时运行命令,父镜像在被子镜像继承后,父镜像的ONBUILD被触发
bash 复制代码
构建(编写完dockerfile文件之后生成镜像):
docker build -f dockerfile地址 -t 新镜像名字:TAG . # 会看到 docker build 命令最后有一个 . . 表示当前目录
举例:docker build -f mydockerfile-centos -t mycentos:0.1 .
相关推荐
布鲁飞丝4 小时前
vivo Pulsar 万亿级消息处理实践()-Ansible运维部署
运维·ansible
XR1234567884 小时前
企业全光网络架构选型技术白皮书:从物理层到运维层的全链路分析
运维·网络·架构
HiDev_4 小时前
【非标自动化】2、认识元器件(直线模组)
运维·自动化
龙仔7255 小时前
人大金仓 KingbaseES V8 只读账号创建完整运维笔记
运维·笔记·sql·人大金仓
我不管我就要叫小猪5 小时前
嵌入式Linux----网络通信
linux·运维·服务器
江湖有缘6 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
姜太小白6 小时前
【Linux】df -h 卡住问题的通用排查与解决方案总结
linux·运维·php
张忠琳6 小时前
【NPU】Ascend Docker Runtime v26.0.1 之二 runtime/process/process.go — 超深度逐行分析
云原生·容器·架构·kubernetes·npu·docker-runtime
fengyehongWorld7 小时前
Linux 终端快捷键
linux·运维
看昭奚恤哭7 小时前
平滑加权轮询负载均衡的底层逻辑
运维·负载均衡