CentOS7 安装 DockerDocker-compose
CentOS7 安装 Docker&&Docker-compose
CentOS7 内核要求≥3.10,推荐使用 yum 安装官方 docker‑ce
1. 卸载旧版本(如有)
yum remove-ydocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate\docker-engine2. 安装依赖工具
yuminstall-yyum-utils device-mapper-persistent-data lvm23. 添加docker软件源
阿里云源(国内推荐,速度快)
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo4. 安装 Docker CE(社区版)
yum makecache fast yuminstall-ydocker-ce docker-ce-cli containerd.io5. 启动 & 设置开机自启
# 启动dockersystemctl startdocker# 开机自启systemctlenabledocker# 查看状态systemctl statusdocker6. 验证安装
docker--versiondockerrun hello-world输出 hello‑world 说明安装成功。
7. 配置阿里云镜像加速(必做,解决拉取镜像慢)
mkdir-p/etc/dockercat>/etc/docker/daemon.json<<EOF { "registry-mirrors": [ "https://docker.mirrors.ustc.edu.cn", "https://hub-mirror.c.163.com" ] } EOF# 重载配置重启dockersystemctl daemon-reload systemctl restartdocker常用命令速查
systemctl startdocker#启动systemctl stopdocker#停止systemctl restartdocker#重启dockerinfo#查看docker信息遇到报错小提示
- 如果yum报错,执行:
yum clean all && yum makecache - CentOS7内核过低,建议升级内核;
uname -r查看内核版本 - hello-world拉取失败,检查镜像加速器配置是否正确
CentOS7 安装 docker‑compose
docker‑compose v2 现在叫
docker compose(插件形式,推荐);v1 为独立二进制已停止维护
方式一:安装 Compose V2(插件版,推荐,随docker命令直接使用docker compose)
# 下载compose插件curl-L"https://github.com/docker/compose/releases/download/v2.27.3/docker-compose-linux-x86_64"-o/usr/libexec/docker/cli-plugins/docker-compose# 添加执行权限chmod+x /usr/libexec/docker/cli-plugins/docker-compose验证:
dockercompose version⚠️注意:V2命令是docker compose(中间空格,不是横杠)
方式二:传统 v1(docker‑compose 带横杠,旧项目用,已废弃)
curl-L"https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname-s)-$(uname-m)"-o/usr/local/bin/docker-composechmod+x /usr/local/bin/docker-compose# 创建软链接方便调用ln-s/usr/local/bin/docker-compose /usr/bin/docker-compose验证:
docker-compose-v国内下载慢备选(github访问失败时)
Compose V2 国内镜像下载
curl-L"https://mirror.ghproxy.com/https://github.com/docker/compose/releases/download/v2.27.3/docker-compose-linux-x86_64"-o/usr/libexec/docker/cli-plugins/docker-composechmod+x /usr/libexec/docker/cli-plugins/docker-composeCompose V1 国内镜像下载
curl-L"https://mirror.ghproxy.com/https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname-s)-$(uname-m)"-o/usr/local/bin/docker-composechmod+x /usr/local/bin/docker-composeln-s/usr/local/bin/docker-compose /usr/bin/docker-composecompose常用命令
dockercompose up-d#后台启动dockercompose down#停止并删除容器dockercompose logs-f#实时看日志dockercomposeps#查看服务状态dockercompose restart#重启服务说明:
- v2:
docker compose up -d(空格)- v1:
docker-compose up -d(横杠)
3套常用docker-compose.yml模板(CentOS7 Docker Compose V2直接使用)
使用方式:新建docker-compose.yml,粘贴内容,同目录执行docker compose up -d后台启动。
模板1:Nginx 最简模板(入门示例)
version:"3"services:nginx:image:nginx:stablecontainer_name:nginxports:-"80:80"-"443:443"volumes:# 挂载配置、网页目录-./nginx/conf:/etc/nginx/conf.d-./nginx/html:/usr/share/nginx/html-./nginx/logs:/var/log/nginxrestart:always常用操作:
dockercompose up-d#后台启动dockercompose logs nginx#查看日志dockercompose restart#重启dockercompose down#销毁容器模板2:MySQL 5.7 稳定版(业务最常用)
version:"3"services:mysql:image:mysql:5.7container_name:mysql57ports:-"3306:3306"environment:MYSQL_ROOT_PASSWORD:123456MYSQL_DATABASE:testdbTZ:Asia/Shanghaivolumes:-./mysql/data:/var/lib/mysql-./mysql/conf:/etc/mysql/conf.drestart:always说明:
- root密码:
123456,自行修改 - 自动创建数据库
testdb - 数据持久化到宿主机,删除容器数据不丢失
模板3:LNMP组合(Nginx+MySQL8.0+PHP7.4 建站全套)
version:"3"services:nginx:image:nginx:stablecontainer_name:nginxports:-"80:80"volumes:-./html:/usr/share/nginx/html-./nginx/conf:/etc/nginx/conf.ddepends_on:-phprestart:alwaysphp:image:php:7.4-fpmcontainer_name:php74volumes:-./html:/usr/share/nginx/htmldepends_on:-mysqlrestart:alwaysmysql:image:mysql:8.0container_name:mysql80ports:-"3306:3306"environment:MYSQL_ROOT_PASSWORD:root123TZ:Asia/Shanghaivolumes:-./mysql/data:/var/lib/mysqlrestart:always通用高频命令汇总
# 后台创建并启动dockercompose up-d# 实时查看全部日志dockercompose logs-f# 查看运行容器dockercomposeps# 重启所有服务dockercompose restart# 停止容器,不删除数据dockercompose stop# 停止并删除容器(镜像、挂载文件保留)dockercompose down# 停止+删除容器+删除镜像dockercompose down--rmiall补充小知识点
restart: always:服务器重启自动拉起容器;volumes挂载:容器数据映射到服务器本地,防止删容器丢失数据;depends_on:控制启动顺序,先启动依赖服务;- V1版本命令把空格改为横杠:
docker-compose up -d。