当前位置: 首页 > news >正文

docker compose xtify-music-web

配置文件解析

docker-compose.yml 文件定义了一个多容器应用,包含前端(frontend)和后端(backend)两个服务。以下是关键配置项的说明:

前端服务 (frontend)

  • 使用镜像 sherlockouo/xtify-music-web:latest
  • 容器名称设为 xtify-music-web
  • 自动重启策略为 unless-stopped(除非手动停止,否则自动重启)
  • 端口映射 2222:80 表示将宿主机的 2222 端口映射到容器的 80 端口
  • 环境变量 API_BASE_URL 指定后端 API 地址(通过容器名 backend 进行内部通信)
  • 依赖 backend 服务,确保后端先启动

后端服务 (backend)

  • 使用镜像 sherlockouo/xtify-music-server:latest
  • 容器名称设为 xtify-music-server
  • 自动重启策略为 unless-stopped
  • 端口映射 35530:35530 将宿主机的 35530 端口映射到容器的同名端口
  • 环境变量包括:
    • PORT=35530 指定服务监听端口
    • NODE_ENV=production 设置为生产环境
    • 注释部分预留了数据库连接配置(如需要可取消注释并填写实际值)

部署步骤

  1. 保存配置文件
    将内容保存为 docker-compose.yml 文件,确保缩进正确(使用空格而非制表符)。

  2. 启动服务
    在文件所在目录执行以下命令启动容器:

    docker-compose up -d
    

  3. 验证服务

    • 访问前端:http://宿主机IP:2222
    • 检查后端API:http://宿主机IP:35530/api
  4. 管理命令

    • 停止服务:docker-compose down
    • 查看日志:docker-compose logs -f

注意事项

  • 若需添加数据库服务,可在配置中新增 database 服务并取消后端环境变量的注释。
  • 确保宿主机端口(222235530)未被占用,或根据需求修改映射端口。

version: '3'services:frontend:image: sherlockouo/xtify-music-web:latestcontainer_name: xtify-music-webrestart: unless-stoppedports:- "2222:80"  # 前端Web服务端口environment:- API_BASE_URL=http://backend:35530/api  # 后端API地址(容器内通信)depends_on:- backend  # 依赖于后端服务,确保后端先启动backend:image: sherlockouo/xtify-music-server:latestcontainer_name: xtify-music-serverrestart: unless-stoppedports:- "35530:35530"  # 后端API服务端口environment:- PORT=35530  # 服务监听端口- NODE_ENV=production  # 生产环境模式# 可添加其他环境变量(如数据库连接信息)# - DB_HOST=database# - DB_USER=user# - DB_PASSWORD=pass
ip:2222访问
http://www.lryc.cn/news/599413.html

相关文章:

  • DNS 服务正反向解析与 Web 集成实战:从配置到验证全流程
  • 解决企业微信收集表没有图片、文件组件,不能收集图片的问题
  • 【57】MFC入门到精通——MFC 多线程编程总结
  • 飞算 JavaAI “撤回接口信息” 功能:误删接口不用慌,一键恢复更省心
  • 【在线五子棋对战】十、对战玩家匹配管理模块
  • 【LeetCode 热题 100】22. 括号生成——(解法一)选左括号还是选有括号
  • Java面试题(中等)
  • 使用PySide6开发系统界面并打包部署的完整教程
  • 【Redis】初识Redis(定义、特征、使用场景)
  • c++文件操作详解
  • MySQL常用日期函数总结
  • macbook安装homebrew
  • k8s常用基础命令总结
  • Dockerfile 文件及指令详解
  • Linux内核进程管理子系统有什么第八回 —— 进程主结构详解(4)
  • 代驾小程序系统开发:引领出行行业数字化转型
  • 在线笔试系统选型指南:牛客AI智能监考解决方案深度解析
  • Oracle不完全恢复实战指南:从原理到操作详解
  • RNN模型数学推导过程(笔记)
  • 基于Zigee的温度数据采集系统
  • IMU的精度对无人机姿态控制意味着什么?
  • 多层感知机(深度学习-李沐-学习笔记)
  • Oracle 的单体安装
  • SQLite中SQL的解析执行:Lemon与VDBE的作用解析
  • 扒网站工具 HTTrack Website Copier
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘streamlit’问题
  • 【SpringAI实战】实现仿DeepSeek页面对话机器人(支持多模态上传)
  • GPU 服务器ecc报错处理
  • yolov8通道级剪枝讲解(超详细思考版)
  • linux修改用户名和主目录及权限-linux029