Docker实战 : 使用Docker部署Musicn音乐下载工具

Docker实战 : 使用Docker部署Musicn音乐下载工具

  • [一、Musicn 介绍](#一、Musicn 介绍)
    • [1.1 Musicn 简介](#1.1 Musicn 简介)
    • [1.2 注意事项](#1.2 注意事项)
  • 二、本次实践规划
    • [2.1 本地环境规划](#2.1 本地环境规划)
    • [2.2 本次实践介绍](#2.2 本次实践介绍)
  • 三、本地环境检查
    • [3.1 检查Docker服务状态](#3.1 检查Docker服务状态)
    • [3.2 检查Docker版本](#3.2 检查Docker版本)
    • [3.3 检查docker compose 版本](#3.3 检查docker compose 版本)
  • 四、下载Musicn镜像
  • 五、部署Musicn应用
    • [5.1 创建部署目录](#5.1 创建部署目录)
    • [5.2 docker-cli部署(可选)](#5.2 docker-cli部署(可选))
    • [5.3 编辑部署文件](#5.3 编辑部署文件)
    • [5.4 创建Musicn容器](#5.4 创建Musicn容器)
    • [5.4 查Musicn容器状态](#5.4 查Musicn容器状态)
    • [5.5 查看Musicn容器日志](#5.5 查看Musicn容器日志)
  • 六、访问Musicn服务
    • [6.1 访问Musicn主页](#6.1 访问Musicn主页)
    • [6.2 下载音乐文件](#6.2 下载音乐文件)
  • 七、总结

一、Musicn 介绍

1.1 Musicn 简介

Musicn 是一个可播放及下载高品质音乐的命令行工具,支持咪咕、酷我、酷狗和网易云的服务,容器支持 amd64 和 arm64 架构。

1.2 注意事项

  • Musicn 目前已不能下载无损格式的音乐。
  • 此项目仅供个人学习研究,严禁用于商业用途。
  • 暂时只支持咪咕、酷狗和网易云的服务。
  • 由于特殊原因,其余平台暂不支持。
  • 所有服务目前仅支持普通 MP3 格式的下载及播放。
  • 部分服务的会员专属歌曲下载暂不支持。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。

hostname IP地址 操作系统版本 Docker版本 镜像版本
jeven01 192.168.3.88 Ubuntu 22.04.1 LTS 27.1.1 latest

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;

2.在Docker环境下部署Musicn音乐下载工具。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

bash 复制代码
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版本

bash 复制代码
root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

bash 复制代码
root@jeven01:~# docker compose version
Docker Compose version v2.19.1

四、下载Musicn镜像

拉取Musicn镜像,镜像名称为:ghcr.io/wy580477/musicn-container:latest

bash 复制代码
root@jeven01:/data/mus-dw# docker pull ghcr.io/wy580477/musicn-container:latest
latest: Pulling from wy580477/musicn-container
Digest: sha256:809d86e105f9925c1242f6c6531ae4bd021e8ac15a32a016ed70d97db30dfff7
Status: Image is up to date for ghcr.io/wy580477/musicn-container:latest
ghcr.io/wy580477/musicn-container:latest

五、部署Musicn应用

5.1 创建部署目录

  • 创建部署目录
bash 复制代码
mkdir -p /data/mus-dw  && cd /data/mus-dw

5.2 docker-cli部署(可选)

如果使用docker-cli方式部署,可以参考以下:

  • 命令行 + Web 模式
bash 复制代码
docker run -d --name=musicn --restart=unless-stopped -v ${PWD}/musicn:/data -p 7478:7478 ghcr.io/wy580477/musicn-container:latest msc -q
  • 仅命令行模式 (空闲时几乎不耗内存)
bash 复制代码
docker run -d --name=musicn --restart=unless-stopped -v ${PWD}/musicn:/data ghcr.io/wy580477/musicn-container:latest tail -f

5.3 编辑部署文件

在`部署目录下,创建docker-compose.yaml文件,其中宿主机映射端口等可以自定义配置。

bash 复制代码
vim docker-compose.yaml
bash 复制代码
version: '3.4'

services:
  musicn:
    image: ghcr.io/wy580477/musicn-container:latest
    container_name: musicn
    restart: always
    entrypoint: ["/sbin/tini", "--", "msc", "-q"]
    ports:
      - "7478:7478"
    volumes:
      - ./data:/data

     

5.4 创建Musicn容器

执行以下命令,创建Musicn容器。

bash 复制代码
root@jeven01:/data/mus-dw# docker compose up -d
[+] Running 2/2
 ✔ Network mus-dw_default  Created                                                                                  0.1s
 ✔ Container musicn        Started                                                                                  0.3s

5.4 查Musicn容器状态

检查Musicn容器状态状态,确保Musicn容器正常启动。

bash 复制代码
root@jeven01:/data/mus-dw#  docker compose ps
NAME                IMAGE                                      COMMAND                  SERVICE             CREATED       STATUS              PORTS
musicn              ghcr.io/wy580477/musicn-container:latest   "/sbin/tini -- msc -q"   musicn              4 minutes ago       Up 4 minutes        0.0.0.0:7478->7478/tcp, :::7478->7478/tcp

5.5 查看Musicn容器日志

检查Musicn容器日志,确保Musicn服务正常运行。

bash 复制代码
docker compose logs

六、访问Musicn服务

6.1 访问Musicn主页

访问地址:http://192.168.3.88::7478,将IP替换为自己服务器IP地址。如果无法访问到以下页面,则检查宿主机的防火墙是否关闭或者放行相关端口,云服务器则还需要设置安全组规则。

6.2 下载音乐文件

  • 选择音源,这里选择酷狗音乐,搜索栏填写需要搜索的歌曲名,在点击下载即可。

七、总结

在使用 Docker 部署 Musicn 音乐下载工具的过程中,Docker 的便捷性和高效性得到了充分体现。通过简单的 Dockerfile 和 docker-compose.yaml 文件,能够快速搭建和运行 Musicn,大幅简化了环境配置和依赖管理。Musicn 的命令行界面简洁易用,支持多个音乐平台的播放和下载功能。虽然目前不支持无损格式和部分会员专属歌曲,但普通 MP3 格式的下载和播放已经非常方便。这次实践展示了 Docker 在快速部署和管理应用方面的优势。

相关推荐
沉迷学习 日益消瘦1 小时前
17-Custom Resource 入门
docker·容器·kubernetes
腾飞开源5 小时前
01_K8s干货笔记之认识K8s
运维·笔记·云原生·容器·kubernetes·k8s·容器化部署
江湖有缘13 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
张忠琳14 小时前
【NPU】Ascend Docker Runtime v26.0.1 之二 runtime/process/process.go — 超深度逐行分析
云原生·容器·架构·kubernetes·npu·docker-runtime
Kevin Wang72718 小时前
Nvidia-AGX-spark部署手册——课堂质量诊断(jetpack:r36)
python·docker·容器
回眸不遇20 小时前
将 Docker虚拟磁盘文件ext.vhdx迁移出C盘 ,更换到D盘
c语言·docker·容器
雨辰AI20 小时前
K8s人大金仓主从高可用搭建|容器化集群自动同步+故障切换(生产完整版)
云原生·容器·kubernetes
潘正翔1 天前
k8s基础_kubeadm搭建k8s集群
linux·运维·docker·云原生·容器·kubernetes
Echo flower1 天前
Docker 容器中 Puppeteer 僵尸进程排查与修复
运维·docker·容器·puppeteer