Rock笔记
~/rocknotes/articles/427.md article
// article · docker

Docker 常用命令

1、基本命令

#打印客户端版本信息(不启动Docker也能查看)
docker -v

#打印客户端和服务端详细信息(需要启动Docker后才能查看)
#docker version


2、镜像相关

# 搜索镜像
docker search [镜像名]

# 拉取镜像
docker pull [镜像名]:[标签]
# 示例:docker pull mysql:8,如果不带标签,默认拉latest

# 列出本地镜像
docker images
docker image ls

# 删除镜像,镜像有运行的容器不能删除
docker rmi [镜像ID/镜像名]
# 强制删除,镜像有运行的容器也能删除
docker rmi -f [ID]

# 构建镜像(当前目录Dockerfile)
docker build -t 镜像名:标签 .

# 导出镜像
docker save -o xxx.tar 镜像名:标签
# 导入镜像
docker load -i xxx.tar

# 给镜像打标签
docker tag 原镜像:tag 新镜像:tag


3、容器相关

# 创建并启动容器
docker run [参数] 镜像名

# 常用run参数说明
# -d 后台运行(守护进程)
# -p 宿主机端口:容器端口 端口映射
# --name 指定容器名称
# -v 宿主机目录:容器目录 数据卷挂载
# --restart=always 开机自启
# -it 交互式终端

# 示例
docker run -d --name nginx-demo -p 8080:80 nginx

# 查看正在运行容器
docker ps
# 查看所有容器(含已停止)
docker ps -a

# 启动/停止/重启容器
docker start [容器名/ID]
docker stop [容器名/ID]
docker restart [容器名/ID]

# 强制停止(类似kill)
docker kill [容器ID]

# 删除容器(容器必须先停止)
docker rm [容器ID]
# 强制删除运行中容器
docker rm -f [容器ID]
# 清理所有停止的容器
docker container prune


4、进入容器内部

# 推荐:进入运行中的容器
docker exec -it [容器名/ID] /bin/bash
# alpine镜像一般用 sh
docker exec -it [ID] sh

# 旧方式(不推荐,退出容器会停止)
docker attach [容器ID]


5、docker compose

# 前台启动
docker-compose up
# 后台启动
docker-compose up -d
# 停止容器,不删除
docker-compose stop
# 停止并删除容器、网络
docker-compose down
# down同时删除数据卷
docker-compose down -v
# 重启服务
docker-compose restart
# 查看日志
docker-compose logs -f
# 进入服务容器
docker-compose exec 服务名 bash


回复// 0 replies

最新回复 ↓
// 暂无回复

回复功能沿用原详情页:前往原页面参与讨论 →