随机
Enter 搜索 ↑↓ 切换 Esc 清空

fan-shop

命令

fan-shop 非凡商店容器管理平台 部署运维

补充说明

本教程介绍 fan-shop 从 GitHub Actions 自动发布(源码包 + Docker 镜像)到目标服务器一键安装、卸载、升级的完整流程,适用于个人项目自建发布链路。

项目:fan-shop|非凡商店(基于 Docker 的容器管理平台) 仓库:https://github.com/meimolihan/fan-shop Docker 镜像:mobufan/fan-shop:latest

安装与卸载

安装 / 升级

bash -c "$(curl -sSL https://raw.githubusercontent.com/meimolihan/fan-shop/main/scripts/install.sh)"
bash -c "$(curl -sSL https://raw.githubusercontent.com/meimolihan/fan-shop/main/scripts/install.sh)" v2.1.7

systemd 直装模式采用固定参数:应用目录 /opt/fan-shop、监听端口 8001。脚本从 GitHub Release 下载自包含源码包 fan-shop-<版本>.tar.gz(backend + frontend 完整源码),创建 Python venv(FastAPI/uvicorn)并注册 systemd 服务。

卸载命令

bash scripts/uninstall.sh
bash scripts/uninstall.sh --purge
bash <(curl -sSL https://raw.githubusercontent.com/meimolihan/fan-shop/main/scripts/uninstall.sh) --purge

Docker Compose 部署

mkdir -p /vol1/1000/compose/fan-shop && cd /vol1/1000/compose/fan-shop
name: fan-shop
services:
  fan-shop:
    image: mobufan/fan-shop:latest
    container_name: fan-shop
    ports:
      - "8000:8001"
    volumes:
      - ./backend/data:/app/data
      - ./backend/repos:/app/repos
      - ./backend/scripts:/app/scripts
      - ./backend/backup:/app/backup
      - ./backend/logs:/app/logs
      - ./backend/image:/app/image
      - /var/run/docker.sock:/var/run/docker.sock
      - /:/host:rw
      - /etc/docker:/etc/docker:rw
      - /etc/passwd:/etc/passwd:ro
      - /etc/group:/etc/group:ro
    environment:
      - PYTHONUNBUFFERED=1
    privileged: true
    restart: unless-stopped

fan-shop 是容器管理平台,必须挂载 /var/run/docker.sock 与宿主根目录 /:(管理 Docker 与访问宿主机),并以 privileged 运行,部署前请确认宿主机 Docker 环境正常。

启动:

docker compose up -d
docker ps | grep fan-shop

脚本命令

命令 说明
bash scripts/install.sh [版本] 安装/升级为 systemd 服务(不传版本=最新 Release)
bash scripts/uninstall.sh [--purge] 卸载 fan-shop(默认保留数据)
bash scripts/build-and-push.sh v2.1.7 --yes 更新版本号 + 打 tag + 推送(触发 GitHub Actions)

日常管理命令

操作 命令
启动 systemctl start fan-shop
关闭 systemctl stop fan-shop
重启 systemctl restart fan-shop
状态 systemctl status fan-shop
查看实时日志 journalctl -u fan-shop -f
查看最近 30 行日志 journalctl -u fan-shop -n 30 --no-pager
关闭开机自启 systemctl disable fan-shop
端口放行 firewall-cmd --permanent --add-port=8001/tcp && firewall-cmd --reload(firewalld,systemd 直装)
Docker 版升级 docker compose pull && docker compose up -d

应用目录说明

相关命令