Docker 安装与常用命令

Docker 安装与常用命令(超详细版)

我给你整理了主流系统一键安装 + 日常开发最常用命令,直接复制就能用,新手也能快速上手。


一、Docker 安装(一键脚本,最简单)

1. CentOS / RHEL

bash 复制代码
# 1. 卸载旧版本(如果有)
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

# 2. 安装依赖
sudo yum install -y yum-utils

# 3. 设置阿里云镜像源(国内更快)
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 4. 安装 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 5. 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

# 6. 验证安装
docker --version

2. Ubuntu / Debian

bash 复制代码
# 1. 卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc

# 2. 更新依赖
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg lsb-release

# 3. 添加阿里云 GPG 密钥
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 4. 添加镜像源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 5. 安装 Docker
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

# 6. 启动并开机自启
sudo systemctl start docker
sudo systemctl enable docker

# 7. 验证
docker --version

3. macOS / Windows

直接下载桌面版:


二、Docker 服务管理命令

bash 复制代码
# 启动 Docker
sudo systemctl start docker

# 停止 Docker
sudo systemctl stop docker

# 重启 Docker
sudo systemctl restart docker

# 设置开机自启
sudo systemctl enable docker

# 查看 Docker 状态
sudo systemctl status docker

三、最常用 Docker 命令(按场景分类)

1. 镜像(Image)相关

bash 复制代码
# 查看本地所有镜像
docker images

# 从 Docker Hub 拉取镜像(例:nginx、mysql、redis)
docker pull nginx
docker pull mysql:8.0

# 删除本地镜像
docker rmi 镜像ID/镜像名

# 搜索镜像
docker search nginx

2. 容器(Container)相关

bash 复制代码
# 查看运行中的容器
docker ps

# 查看所有容器(包括停止的)
docker ps -a

# 创建并启动容器(最常用格式)
docker run -d --name 容器名 -p 主机端口:容器端口 镜像名
# 示例:启动 nginx,外部访问 8080 端口
docker run -d --name my-nginx -p 8080:80 nginx

# 停止容器
docker stop 容器ID/容器名

# 启动已停止的容器
docker start 容器ID/容器名

# 重启容器
docker restart 容器ID/容器名

# 删除容器(必须先停止)
docker rm 容器ID/容器名

# 强制删除运行中的容器
docker rm -f 容器ID/容器名

3. 进入容器内部(调试必备)

bash 复制代码
# 进入容器命令行(推荐)
docker exec -it 容器ID/容器名 /bin/bash

# 退出容器(不关闭容器)
exit

4. 查看日志

bash 复制代码
# 查看容器日志
docker logs 容器ID/容器名

# 实时查看日志(持续刷新)
docker logs -f 容器ID/容器名

5. 数据拷贝

bash 复制代码
# 从主机复制文件到容器
docker cp 主机文件路径 容器ID:容器内路径

# 从容器复制文件到主机
docker cp 容器ID:容器内路径 主机文件路径

6. 清理无用资源

bash 复制代码
# 删除所有停止的容器
docker container prune

# 删除所有悬空镜像(没被使用的)
docker image prune

四、高频实战示例

bash 复制代码
# 启动 MySQL 8.0,设置密码、端口映射
docker run -d --name mysql8 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0

# 启动 Redis
docker run -d --name my-redis -p 6379:6379 redis

# 启动 Nginx
docker run -d --name my-nginx -p 80:80 nginx

相关推荐
liurunlin8882 小时前
httpslocalhostindex 配置的nginx,一刷新就报404了
运维·nginx
Maverick062 小时前
Oracle PDB 概念与架构
运维·数据库·oracle
小民AI实战笔记2 小时前
htop安装不了怎么解决
linux·运维
vpk1123 小时前
Docker Compose 安装 MySQL 8
mysql·容器
ken22323 小时前
在ubuntu终端里, 怎样让历史不要记录本条命令:禁止记录包含密码之类的命令
linux·运维·ubuntu
Lucis__3 小时前
Linux进程间通信IPC:从管道到共享内存的发展演进
linux·运维·服务器
FJW0208143 小时前
cephadm部署ceph集群以及k8s对接
ceph·容器·kubernetes
BullSmall3 小时前
Nginx负载均衡会话保持配置指南
运维·nginx·负载均衡
不吃香菜kkk、3 小时前
夜莺n9e+监控K8s集群+自定义监控页面
运维·云原生·云计算