avatar

Wz Blog

运维学习・持续更新

  • 首页
  • 文章
  • 登录/注册
  • 管理后台
主页 Docker-compose工具
文章

Docker-compose工具

发表于 2026-10-11 更新于 2026-10- 11
作者 Administrator
4~6 分钟 阅读

1.安装docker-compose工具


mv docker-compose-linux-x86_64 /usr/bin/docker-compose

授权:chmod +x /usr/bin/docker-compose

检查版本是否正确:

docker-compose --version

Docker Compose version v2.37.1

2.编写docker-compose.yml文件:

先创建一个ruoyi-project项目


mkdir ruoyi-project
cd ruoyi-project
vim docker-compose.yml

内容如下:

services:

#MySQL 数据库服务

mysql: #服务名,compose使用服务名连接,不是之前的使用容器名连接了

image: mysql:5.7 #实际使用的镜像名称

container_name: mysql_db #启动的容器名,任意写

environment:

MYSQL_ROOT_PASSWORD: Aa123qwe

MYSQL_DATABASE: ruoyi-vue-pro

MYSQL_USER: ruoyi

MYSQL_PASSWORD: Aa123qwe


volumes:
- mysql_data:/var/lib/mysql
- ./mysql:/docker-entrypoint-initdb.d # 放在这个目录下的sql 启动msyql的时候会加载配置
ports:
- "3306:3306"
networks:
- app_network
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost","-uroot", "-pAa123qwe"]
interval: 5s
timeout: 3s
retries: 5
# Redis 缓存服务
redis:
image: redis:7.0-alpine
container_name: redis_cache
ports:
- "6379:6379"
volumes:
- redis_data:/data # 持久化数据
networks:
- app_network
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
# Java 后端服务 (Spring Boot)
java: #前端ui代理那里:http://java:48080 是这里的服务名
#build:
# context: ./backend # Dockerfile 所在目录
# dockerfile: Dockerfile
image: ruoyi_backend:v1
container_name: java_backend
depends_on:
mysql:
condition: service_healthy
redis:
condition: service_healthy
ports:
- "48080:48080" # Spring Boot 默认端口
networks:
- app_network
restart: unless-stopped
# 前端服务 (Vue/React)
frontend:
#build:
# context: ./frontend # Dockerfile 所在目录
# dockerfile: Dockerfile
image: ruoyi_frontend:v1
container_name: web_frontend
ports:
- "80:80" # Nginx 默认端口
depends_on:
- java** #需要注意!!
networks:
- app_network
# 自定义网络(隔离容器通信)
networks:
app_network:
driver: bridge
ipam:
config:
- subnet: 172.20.0.0/24 # 固定子网防止 IP 变化
如果使用一个已经创建好的自定义网络:
netrowks:
mynet: #已经创建好的自定义网络
external: true #compose不会自己新建名叫mynet的网络,而是去找该网络
# 数据卷声明(持久化数据)
volumes:
mysql_data:
redis_data:
容器与云原生
笔记 Docker
许可协议:  CC BY 4.0
分享

相关文章

10月 17, 2026

Kubernetes v1.28.2 双Master堆叠etcd + Haproxy/Keepalived 高可用部署 SOP(Docker + cri-dockerd)

架构一句话:3 台阿里云 ECS,2 台跑 kube-apiserver + etcd 堆叠控制平面,同时在这 2 台上混部 Haproxy + Keepalived 提供 VIP 172.26.127.62:6443;第 3 台做 Worker。所有 kubelet / kubectl 一律连 V

10月 11, 2026

使用Docker方式部署Harbor镜像仓库

1.下载离线安装包 wget https://github.com/goharbor/harbor/releases/download/v2.13.1/harbor-offline-installer-v2.13.1.tgz 2.解压到/opt目录下 tar xvzf harbor-offli

10月 11, 2026

kubernetes概念

▶ k8s简介以及主要功能(优势) • k8s简介 k8s的本质是一组服务器集群,它可以在集群的每个节点上运行特定的程序,来对节点中的容器进行管理。目的是实现资源管理的自动化。 • 主要功能 ▪ 自我修复:RS deployment 一旦某一个容器崩溃,能够在1秒左右迅速启动新的容器 ▪ 弹性伸缩:

下一篇

Docker

上一篇

DevOps & CICD & Jenkins 简介

最近更新

  • Kubernetes v1.28.2 双Master堆叠etcd + Haproxy/Keepalived 高可用部署 SOP(Docker + cri-dockerd)
  • 名词解释
  • ECS 实例反复冻结 —— 故障根因分析报告
  • 运维六大工作内容
  • 磁盘相关命令

热门标签

监控 Linux 数据库 Docker 笔记 CI/CD Kubernetes Nginx

目录

©2026 Wz Blog. 保留部分权利。

使用 Halo 主题 Chirpy