VPS + Docker:手把手在服务器上部署 MoonTV(完整教程 | 2025)

项目地址:https://github.com/LunaTechLab/MoonTV

演示环境:Debian12服务器

1.安装docker:curl -fsSL https://get.docker.com | bash

启动容器 :systemctl start docker
开机自启 :systemctl enable docker
查看状态 :systemctl status docker

查看docker版本 :docker --version

验证安装 :docker run hello-world

如果看到 Hello from Docker! 说明安装成功

2.安装 Docker Compose

curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose
docker-compose --version

3.创建docker-compose.yml文件

在/etc/docker下创建一个moontv文件夹:mkdir -p /etc/docker/moontv

在moontv文件夹下创建一个的docker-compose.yml文件:

cd /etc/docker/moontv

nano docker-compose.yml

复制内容:

services:
  moontv:
    image: ghcr.io/senshinya/moontv:latest  # 使用来自 GitHub 容器注册表的 MoonTV 镜像
    container_name: moontv                 # 容器名称设为 moontv
    restart: always                        # 如果容器停止,则始终自动重启
    ports:
      - '3880:3000'                        # 映射主机的 3880 端口到容器内的 3000 端口
    environment:
      - PASSWORD=123456             # 访问密码,留空则不启用密码保护(默认空)
      - SITE_NAME=猿猿松               # 站点名称(默认:MoonTV)
      - NEXT_PUBLIC_STORAGE_TYPE=localstorage  # 播放记录/收藏的存储方式
      - NEXT_PUBLIC_ENABLE_BLOCKAD=true    # 是否启用智能去广告功能(实验性)(默认:false,可选:true / false)
      - NEXT_PUBLIC_SEARCH_MAX_PAGE=10     # 搜索接口最大可拉取的页数(默认:5,范围:1-50)
      - NEXT_PUBLIC_AGGREGATE_SEARCH_RESULT=true  # 搜索结果是否按标题和年份聚合(默认:true,可选:true / false)

4.执行容器运行命令
docker-compose up -d

查看是否开启成功 docker-compose ps

5.打开自己相应的端口(3560)防火墙就可以web端访问了http://ip:3880(主要这里冒号要英文的192.3.253.163:3880)

6.绑定域名

NginxProxyManager开源项目:https://github.com/NginxProxyManager/nginx-proxy-manager?utm_source=nginx-proxy-manager

在/etc/docker下创建一个npm文件夹 : mkdir -p /etc/docker/npm

在npm文件夹下创建一个的docker-compose.yml文件:cd /etc/docker/npm

nano docker-compose.yml

配置:

services:
  app:
    image: 'docker.io/jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

启动整个容器

进入docker目录 :cd /etc/docker/npm

执行容器运行命令 :docker-compose up -d

访问nginx管理面板:ip+81( 如:192.3.253.163:81 )

初始账号&密码:Email: [email protected]
Password: changeme

Vercel 上部署 MoonTV

版权声明:
作者:song
链接:https://apepine.com/archives/325
来源:猿猿松
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>