技术解放双手——在 VPS 上搭建 Komga 与申请域名的完整指南

喀秋莎 10小时前 75

在 VPS 上搭建 Komga 与申请域名的完整指南

本文介绍如何在 VPS 上搭建 Komga 漫画管理服务,并申请一个免费域名(DuckDNS),最后配置防火墙和反向代理实现公网访问。

1. 准备环境

  • 一台 Linux VPS(Ubuntu 20.04/22.04)
  • 已安装 dockerdocker-compose
  • 一个可用的公网 IP
# 安装 Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER

# 安装 Docker Compose
sudo apt install docker-compose -y

2. 申请域名(DuckDNS 示例)

访问 DuckDNS,注册并创建一个子域名,例如 komga.duckdns.org

然后在 VPS 上安装 DuckDNS 更新脚本:

mkdir ~/duckdns
cd ~/duckdns
nano duck.sh

内容如下(替换 YOUR_TOKENkomga):

echo url="https://www.duckdns.org/update?domains=komga&token=YOUR_TOKEN&ip=" \
 | curl -k -o ~/duckdns/duck.log -K -

添加到 cron 定时任务:

crontab -e
*/5 * * * * ~/duckdns/duck.sh >/dev/null 2>&1

3. 运行 Komga 容器

在 VPS 上创建目录结构:

mkdir -p ~/komga/config
mkdir -p ~/komga/data

编写 docker-compose.yml

version: "3.3"
services:
  komga:
    image: ghcr.io/gotson/komga:latest
    container_name: komga
    restart: unless-stopped
    ports:
      - "8080:8080"  # 内部管理端口
      - "25600:25600" # H@H/推送服务
    volumes:
      - ./config:/config
      - ./data:/data

启动:

cd ~/komga
docker-compose up -d

4. 配置防火墙

默认情况下 UFW 会阻止未放行的端口。放行 Komga 使用的端口:

sudo ufw allow 8080/tcp
sudo ufw allow 25600/tcp
sudo ufw reload

5. 配置反向代理(可选,推荐)

建议使用 Nginx 反向代理并启用 HTTPS(Let’s Encrypt)。

sudo apt install nginx certbot python3-certbot-nginx -y

sudo nano /etc/nginx/sites-available/komga

内容:

server {
    server_name komga.duckdns.org;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

启用站点并获取证书:

sudo ln -s /etc/nginx/sites-available/komga /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

sudo certbot --nginx -d komga.duckdns.org

6. 验证访问

浏览器访问:

https://komga.duckdns.org

如果一切正常,你会看到 Komga 的 Web 界面。

7. 常用维护脚本

更新 Komga

cd ~/komga
docker-compose pull
docker-compose up -d

开放自定义端口

#!/bin/bash
PORT=$1
if [ -z "$PORT" ]; then
  echo "用法: $0 端口号"
  exit 1
fi
sudo ufw allow ${PORT}/tcp
sudo ufw reload
echo "端口 ${PORT} 已放行"

结语

通过以上步骤,你就能在 VPS 上搭建 Komga,并通过域名安全访问。如果想进一步优化,可以使用 Cloudflare 来加速与防护。

我在上班,别发骚图了。
最新回复 (2)
  • ACGNUSER 7小时前
    0 2
    (1)建议不要在公网开放端口,一般人很难申请到公网IP地址
    (2)易用性也不如Window端的exe,win端只要点开exe就自动完成部署网络(https://download.komga.org  )
    (3)搞远程访问啥的,不如远程访问路由器,再访问电脑的IP地址
    这个人很懒,什么也没有留下!
  • 欧派兽 5小时前
    0 3
    奖励三
    1:管理员给你移区后会显示移到了你之前发帖的区。 2:点击我作为楼主发帖时一楼下的图片签名,可以跳转到站规教程贴。 3:多次水贴水回复会封号哦? 4:不知道回什么的时候就点“里世界专属”,一键随机生成几种回复内容。 5:祝你在里世界玩得愉快!
    • ACG里世界
      4
          
返回
发新帖