Docker部署music-tag-web音乐标签编辑器

Docker部署music-tag-web音乐标签编辑器

Docker部署music-tag-web音乐标签编辑器

一、music-tag-web介绍

1.1 music-tag-web简介

Music-Tag-Web 是一款功能全面的音乐标签编辑工具,专为管理和优化您的本地音乐库而设计。它不仅能够查看和编辑大部分音频格式的元数据,还提供了丰富的批量处理、整理和转换功能,使得管理大量音乐文件变得简单高效。

1.2 主要特点

  • 广泛的音频格式支持:支持查看、编辑和修改大多数音频格式的元数据。
  • 批量自动修改(刮削):可以自动批量更新音乐标签,提升音乐库的信息完整性。
  • 音乐指纹识别:即使音乐文件缺少元数据,也能通过音乐指纹技术进行识别。
  • 智能文件整理:可以根据艺术家、专辑等信息对音乐文件进行分组,并支持自定义多级分组。
  • 灵活的排序选项:允许用户按照文件名、大小或更新时间等多种方式进行排序。
  • 繁简体转换:支持音乐元数据在繁体中文与简体中文之间的批量转换。
  • 元数据补充:能够从文件名中拆解并补充缺失的元数据信息。
  • 文本替换功能:提供批量替换音乐元数据中的脏数据,保持数据清洁。
  • 音乐格式转换:集成 ffmpeg 支持多种音乐格式之间的转换。
  • 整轨切割:支持将整轨音乐文件分割成多个独立的曲目。
  • 多源标签获取:可以从不同的来源获取音乐标签信息。
  • 歌词翻译:内置歌词翻译功能,便于理解和欣赏不同语言的歌曲。
  • 操作记录显示:方便用户追踪和回顾所有执行过的操作。
  • 专辑封面管理:支持导出专辑封面,并允许上传自定义封面。
  • 移动端适配:界面友好地适应移动设备,确保手机端访问同样流畅。
  • 小爱同学兼容:支持使用小爱同学语音助手播放本地音乐及NAS上的音乐。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。
hostnameIP地址操作系统版本Docker版本镜像版本
jeven01192.168.3.88Ubuntu 22.04.1 LTS27.1.1latest

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署music-tag-web音乐标签编辑器。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。
root@jeven01:~# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2024-09-09 10:43:35 CST;3 weeks 5 days ago Docs: https://docs.docker.com Main PID: 695(dockerd) Tasks: 135(limit: 9387) Memory: 4.0G CPU: 46min 46.854s CGroup: /system.slice/docker.service ├─ 695 /usr/bin/dockerd ├─ 846 containerd --config /var/run/docker/containerd/containerd.toml 

3.2 检查Docker版本

检查Docker版本
root@jeven01:~# docker -v Docker version 27.1.1, build 6312585

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。
root@jeven01:~# docker compose version Docker Compose version v2.19.1 

四、下载music-tag-web镜像

拉取music-tag-web镜像,镜像名称为:xhongc/music_tag_web:latest
root@jeven01:~# docker pull xhongc/music_tag_web:latest latest: Pulling from xhongc/music_tag_web 214ca5fb9032: Pull complete fa7d81b69b9a: Pull complete 96a5a0a62ab5: Pull complete 7d3628511179: Pull complete ea3879bc1c47: Pull complete 795d097495d7: Pull complete d43d04714399: Pull complete c393fca344e1: Pull complete 8bc55050d840: Pull complete 554226923268: Pull complete 09df76748688: Pull complete f7faff18fae9: Pull complete 9715bb92b43a: Pull complete 0a465525c1c1: Pull complete 7932c1ba51f0: Pull complete 304c27021719: Pull complete 82ce0d70782e: Pull complete 7e4eaada0e96: Pull complete 26d053e64eaf: Pull complete 1791f2cbb5bd: Pull complete 317d91ef5cdd: Pull complete 21836414d041: Pull complete 2b8b014e17e7: Pull complete Digest: sha256:07afa098abb5c2d075323f49ca8ef196c751deece018c6fcf16b3da4d7ce7ad0 Status: Downloaded newer image for xhongc/music_tag_web:latest docker.io/xhongc/music_tag_web:latest 

五、部署music-tag-web应用

5.1 创建部署目录

  • 创建部署目录
mkdir -p /data/music-tag-web &&cd /data/music-tag-web 

5.2 编辑部署文件

在`部署目录下,创建docker-compose.yaml文件,其中宿主机映射端口等可以自定义配置。
vim docker-compose.yaml 
version: '3' services: music-tag: image: xhongc/music_tag_web:latest container_name: music-tag-web ports: - "8001:8001" volumes: - /data/music-tag-web/music:/app/media:rw - /data/music-tag-web/config:/app/data command: /start restart: unless-stopped 

5.3 创建music-tag-web容器

执行以下命令,创建music-tag-web容器。
root@jeven01:/data/music-tag-web# docker compose up -d[+] Running 2/2 ✔ Network music-tag-web_default Created 0.1s ✔ Container music-tag-web Started 0.6s 

5.4 查music-tag-web容器状态

检查music-tag-web容器状态状态,确保music-tag-web容器正常启动。
root@jeven01:/data/music-tag-web# docker compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS music-tag-web xhongc/music_tag_web:latest "/entrypoint.sh /sta…" music-tag 34 seconds ago Up 33 seconds 0.0.0.0:8001->8001/tcp, :::8001->8001/tcp, 8002/tcp 

5.5 查看music-tag-web容器日志

检查music-tag-web容器日志,确保music-tag-web服务正常运行。
docker compose logs 
在这里插入图片描述

六、访问music-tag-web服务

访问地址:http://192.168.3.88:8001,将IP替换为自己服务器IP地址。如果无法访问到以下页面,则检查宿主机的防火墙是否关闭或者放行相关端口,云服务器则还需要设置安全组规则。
在这里插入图片描述
默认账号密码 admin/admin ,第一次登录修改默认密码。
在这里插入图片描述

七、总结

通过Docker部署Music-Tag-Web音乐标签编辑器的实战项目,我深刻体会到了容器化技术在简化应用部署和提高环境一致性方面的巨大优势。只需几条简单的Docker命令,即可将Music-Tag-Web及其依赖项封装成一个独立的容器,轻松实现了跨平台的无缝迁移。此外,利用Docker Compose进一步简化了多容器应用的管理,使得服务的启动、停止和更新变得更加直观高效。

Read more

Flutter 组件 pair 适配鸿蒙 HarmonyOS 实战:结构化元组治理,构建轻量级双元数据模型与跨层传递架构

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 pair 适配鸿蒙 HarmonyOS 实战:结构化元组治理,构建轻量级双元数据模型与跨层传递架构 前言 在鸿蒙(OpenHarmony)生态迈向多维数据感知、涉及高频函数返回值传递、两元坐标互操作及复杂状态标识返回的背景下,如何以最轻量化的方式实现数据的“成对化”封装,已成为提升代码整洁度与系统运行效率的“工程润滑剂”。在鸿蒙设备这类强调 AOT 极致性能与低内存开销的环境下,如果应用为了简单的双元数据(如:经纬度、错误码+消息)而动态创建大量繁琐的单次使用类(POJO),由于由于对象头开销与 GC 压力,极易由于由于“类爆炸”导致内存碎片的堆积。 我们需要一种能够支持强类型泛型、具备不可变属性且无需显式类定义的元组治理方案。 pair 为 Flutter 开发者引入了源自 C++ 与 Java 标准库经典语义的“

By Ne0inhk
SpringBoot + Vue 前后端分离项目实战:权限 + 工作流 + 报表

SpringBoot + Vue 前后端分离项目实战:权限 + 工作流 + 报表

✨道路是曲折的,前途是光明的! 📝 专注C/C++、Linux编程与人工智能领域,分享学习笔记! 🌟 感谢各位小伙伴的长期陪伴与支持,欢迎文末添加好友一起交流! 📚 目录 * 前言 * 一、项目背景与技术选型 * 二、系统架构设计 * 三、权限管理模块 * 四、工作流引擎集成 * 五、报表系统实现 * 六、核心代码实现 * 七、部署与运维 * 八、总结 前言 前后端分离架构已成为企业级应用开发的主流选择。本文将通过一个完整的企业管理系统实战项目,详细介绍如何使用 SpringBoot + Vue 技术栈,实现权限管理、工作流引擎和报表系统三大核心功能。 项目特色 * 前后端分离:RESTful API 设计,便于扩展和维护 * RBAC权限模型:细粒度的权限控制体系 * Flowable工作流:可视化流程设计与执行 * 动态报表:灵活配置的数据可视化方案 一、项目背景与技术选型 1.

By Ne0inhk
AI浪潮下,前端路在何方

AI浪潮下,前端路在何方

一、本文主题 本篇为第二篇,依托于AI,无学习基础前端转KMP开发,主要针对前端发展展望,实践,和思考进行讲解。其中包含前端转KMP开发,并最终将项目如期落地。 篇一 篇二 * 展望:介绍AI对前端职业的影响和变革,以及对自身学习成长的影响 * 实践:依托于AI,实现无学习周期的,前端转KMP跨端 * 思考:未来研发团队新形态的探索和思考 二、行业发展,展望总结性观点 从语言热度趋势,框架/工具发展,浏览器发展,AI工具支持,跨端演变,学习模式变革等方面,分析前端发展和未来展望 总结性观点 * 从AI在编程语言支持能力情况,前端和AI有非常强的融合能力,必然会走向人机协同模式。同时拥抱具有类型安全性的TS已是必然趋势。有机遇也有风险,传统开发者逐步转变为AI人机协同研发。vibe coding,大模型善后工程师,AI 80分危机等,新兴用词出现,也预示着这一变革的推进,编码方式转变正在发生。 * 前端在视觉展现上,具有代码体量小,依赖少,

By Ne0inhk
从Web到AI:Skills市场与共享经济实战指南

从Web到AI:Skills市场与共享经济实战指南

图片来源网络,侵权联系删。 Skills生态系统相关系列文章 从Web到AI:构建行业专属Skills生态系统的实战指南与未来展望 从Web到AI:金融/医疗/教育行业专属Skills生态系统设计实战 从Web到AI:Skills市场与共享经济实战指南 文章目录 * 1. 当NPM遇见AI技能市场 * 2. Web生态与Skills市场的基因同源性 * 2.1 核心概念映射表(Web→AI) * 2.2 企业级Skills市场架构 * 3. 用共享经济思维重构Skills交易 * 3.1 交易模型设计(类比Stripe支付) * 3.2 技能质量门禁(类比NPM质量评分) * 4. 三端协同Skills市场系统 企业级实战 * 4.1 项目结构(Spring Cloud + Vue3 + 小程序) * 4.2 核心功能代码实现 * 5. Web开发者转型Skills市场的痛点解决方案 * 5.

By Ne0inhk