当前位置:首页 > PS视频 > 正文内容

如何使用Docker Compose编排多个容器?

编辑3个月前 (04-28)PS视频60

# Docker Compose 多容器编排|极简速通(一看就会、直接能用) 我给你**最实用、最通用、最不容易出错**的一套流程,不用复杂概念,照着写就能跑起来。 --- # 一、核心一句话 **Docker Compose = 用一个 YAML 文件,一键启动/停止/管理多个容器** 比如:Nginx + MySQL + Redis + SpringBoot 一起启动。 --- # 二、3 步搞定多容器编排 ## 1. 创建文件 在项目文件夹下新建: ``` docker-compose.yml ``` ## 2. 编写配置(复制就能用) 下面是**最标准模板**:Web + Redis + MySQL 三容器联动 ```yaml version: '3.8' services:  # 容器1:Web服务(你的项目)  web:    image: nginx:alpine    ports:      - "80:80"    volumes:      - ./html:/usr/share/nginx/html    depends_on:      - redis      - mysql    restart: always  # 容器2:Redis  redis:    image: redis:alpine    restart: always  # 容器3:MySQL  mysql:    image: mysql:8.0    ports:      - "3306:3306"    environment:      MYSQL_ROOT_PASSWORD: 123456      MYSQL_DATABASE: testdb    volumes:      - mysql-data:/var/lib/mysql    restart: always # 数据卷(持久化 MySQL 数据) volumes:  mysql-data: ``` ## 3. 一键启动 ```bash docker-compose up -d ``` --- # 三、最常用 5 条指令(背会就够) ```bash # 后台启动所有容器 docker-compose up -d # 停止所有容器(不删除数据) docker-compose stop # 停止并删除容器、网络 docker-compose down # 查看日志 docker-compose logs -f # 重启所有服务 docker-compose restart ``` --- # 四、YAML 里关键字的意思(一看就懂) ```yaml version: '3.8'        # 版本号 services:             # 所有容器写在这里  容器名:             # 自定义,如 web mysql redis    image: 镜像名     # 使用什么镜像    ports:            # 端口映射 宿主机:容器      - "80:80"    environment:      # 环境变量(密码、库名等)    volumes:          # 目录挂载(持久化)    depends_on:       # 依赖关系,先启动谁    restart: always   # 崩溃自动重启 ``` --- # 五、容器之间怎么互相访问? **重点:容器名 = 域名** 比如: - web 容器要连 MySQL - 不要写 `127.0.0.1` - 直接写容器名 **mysql** 示例连接地址: ``` jdbc:mysql://mysql:3306/testdb ``` --- # 六、最常用组合模板(直接复制) ## 1)Nginx + PHP + MySQL ```yaml version: '3.8' services:  nginx:    image: nginx:alpine    ports:      - "80:80"    volumes:      - ./html:/var/www/html    depends_on:      - php  php:    image: php:fpm-alpine    volumes:      - ./html:/var/www/html  mysql:    image: mysql:8    environment:      MYSQL_ROOT_PASSWORD: root ``` ## 2)Vue/React + Nginx ```yaml services:  web:    image: nginx    ports:      - "80:80"    volumes:      - ./dist:/usr/share/nginx/html ``` --- # 七、你只要告诉我 3 个信息,我能直接给你生成可运行的 docker-compose.yml 1. 你要启动哪些容器?(如 MySQL + Redis + SpringBoot) 2. 端口分别是什么? 3. 需不需要挂载目录持久化?

扫描二维码推送至手机访问。

版权声明:本文由手机数据加工厂发布,如需转载请注明出处。

本文链接:https://cryp6.com/?id=186

“ 如何使用Docker Compose编排多个容器?” 的相关文章

手机和电脑的运存和储存容量是否可以扩展?

手机 vs 电脑:运存、储存 能否扩展?【极简大白话】先记住两个关键:运存(RAM)= 管流畅、后台储存(ROM / 硬盘)= 存照片、文件、软件一、手机端(iPhone + 安卓统一结论)1. 手机运存:❌完全不能扩展出厂焊死在主板上,无法更换、无法加装所谓「内存融合 / 虚拟运存」:只是拿储存空...

什么是科技数据?

科技数据,本质上是通过电子设备(手机、电脑、服务器等)采集、存储、传输和处理的各类信息的集合,以二进制代码的形式存在,是数字科技的基础。与我们传统认知中的“文件”不同,科技数据的范畴更广泛,既包括我们主动创建的照片、文档、视频(主动数据),也包括设备运行时自动生成的缓存、日志、定位信息(被动数据);...

怎样才能提高手机电脑数据同步的速度?

怎样提高手机与电脑数据同步的速度切换高速网络优先连接5G 频段 WiFi,避开速度慢、干扰大的 2.4G WiFi;手机和电脑连接同一个无线网络,使用局域网传输,不消耗外网网速,速度更快。缩短设备距离让手机和电脑靠近摆放,远离墙壁、金属障碍物,减少信号遮挡,保证网络信号稳定强劲。关闭占用网速的程序暂...

如何在关闭云同步功能后防止数据被自动恢复/覆盖?

关闭云同步后,防止数据自动恢复、被云端覆盖的方法一、彻底切断云端连接全程断开网络修改文件、记录期间,关闭电脑和手机的 WiFi、移动数据。离线状态下,设备无法连接云端,就不会自动下载旧数据、覆盖修改内容。退出云端账号电脑退出 OneDrive、百度网盘账号;手机退出品牌云服务、iCloud 账号。账...

 如何使用Apify进行数据采集?

如何使用Apify进行数据采集?

下面用零代码、最快速的方式,带你完整走一遍 Apify 采集数据流程(从注册到导出,约 3 分钟)。1. 注册并登录 Apify打开官网:https://apify.com用邮箱注册,免费版每月有额度,不用绑卡。2. 在 Apify Store 选爬虫(Actor)进入 Store(顶部菜单)。搜索...

如何使用PE系统破解Windows密码?

⚠️法律警告该操作仅限自己遗忘密码的私人电脑。未经允许破解他人电脑、办公设备,属于违法行为,触犯《网络安全法》《刑法》,严禁乱用。以下方法纯无损、不删除文件、不格式化、数据 100% 保留,只清除开机登录密码。一、准备工作另一台正常能用的电脑一个空白 U 盘(8G 以上)纯净 WinPE 工具(如:...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。