Runtipi 超级nas应用中心
Runtipi 是一个个人家庭服务器管理器,使在单个服务器上管理和运行多个服务变得简单。它基于Docker,并提供一个简单的网页界面来管理您的服务。Runtipi 设计得非常易于使用,因此您无需担心手动配置或网络问题。只需在您的服务器上安装 Runtipi,并使用网页界面添加和管理服务。您可以在应用商店仓库中看到可用的服务列表,如果您找不到所需的服务,还有许多社区应用商店供您选择,甚至您可以创建自己的应用商店。要开始使用 Runtipi,请按照下面的安装说明进行操作。
官方地址https://github.com/runtipi/runtipi
services:
runtipi-reverse-proxy:
container_name: runtipi-reverse-proxy
depends_on:
runtipi:
condition: service_healthy
image: traefik:v3.5
restart: unless-stopped
ports:
- 3180:80
- 3143:443
command: --providers.docker
volumes:
- /share/Container/runtipi/traefik:/etc/traefik
- /share/Container/runtipi/traefik/shared:/shared
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- tipi_main_network
runtipi-db:
container_name: runtipi-db
image: postgres:14
restart: unless-stopped
stop_grace_period: 1m
volumes:
- /share/Container/runtipi/data/postgres:/var/lib/postgresql/data
environment:
POSTGRES_PASSWORD: postgres
POSTGRES_USER: tipi
POSTGRES_DB: tipi
healthcheck:
test: ["CMD-SHELL", "pg_isready -d tipi -U tipi"]
interval: 5s
timeout: 10s
retries: 20
start_period: 5s
networks:
- tipi_main_network
runtipi-queue:
container_name: runtipi-queue
image: rabbitmq:4-alpine
restart: unless-stopped
environment:
RABBITMQ_DEFAULT_USER: tipi
RABBITMQ_DEFAULT_PASS: rabbitmq
networks:
- tipi_main_network
runtipi:
container_name: runtipi
healthcheck:
start_period: 10s
test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"]
interval: 5s
timeout: 10s
retries: 20
image: ghcr.nju.edu.cn/runtipi/runtipi:v4.4.0
restart: unless-stopped
depends_on:
runtipi-db:
condition: service_healthy
runtipi-queue:
condition: service_started
volumes:
# Data
- /share/Container/runtipi/media:/data/media
- /share/Container/runtipi/state:/data/state
- /share/Container/runtipi/repos:/data/repos
- /share/Container/runtipi/apps:/data/apps
- /share/Container/runtipi/logs:/data/logs
- /share/Container/runtipi/traefik:/data/traefik
- /share/Container/runtipi/user-config:/data/user-config
- /share/Container/runtipi/app-data:/app-data
- /share/Container/runtipi/backups:/data/backups
# Static
#- /share/Container/runtipi/config.env:/data/.env
- /share/Container/runtipi/cache:/cache
- /share/Container/runtipi/runtipi.yml:/data/docker-compose.yml
- /var/run/docker.sock:/var/run/docker.sock:ro
- /proc:/host/proc
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
environment:
LOCAL: true
NODE_ENV: production
ROOT_FOLDER_HOST: /share/Container/runtipi
POSTGRES_USERNAME: tipi
POSTGRES_PASSWORD: postgres
RABBITMQ_USERNAME: tipi
RABBITMQ_PASSWORD: rabbitmq
RABBITMQ_HOST: runtipi-queue
INTERNAL_IP: 192.168.0.108 #改成自己内网ip
TIPI_VERSION: 0.0.0
LOG_LEVEL: debug
APPS_REPO_ID: 67a91b6b7bc618c3916b04af5c9aa896a7f0416d762ee96f0cb350b1aab74a10
APPS_REPO_URL: https://github.com/runtipi/runtipi-appstore
networks:
- tipi_main_network
labels:
# ---- General ----- #
runtipi.managed: true
traefik.enable: true
traefik.http.middlewares.redirect-to-https.redirectscheme.scheme: https
traefik.http.middlewares.runtipi.forwardauth.address: http://runtipi:3000/api/auth/traefik}
# ---- Dashboard ----- #
traefik.http.services.dashboard.loadbalancer.server.port: 3000
# Local ip
traefik.http.routers.dashboard.rule: PathPrefix("/")
traefik.http.routers.dashboard.service: dashboard
traefik.http.routers.dashboard.entrypoints: web
# Websecure
traefik.http.routers.dashboard-insecure.rule: Host(`${DOMAIN}`) && PathPrefix(`/`)
traefik.http.routers.dashboard-insecure.service: dashboard
traefik.http.routers.dashboard-insecure.entrypoints: web
traefik.http.routers.dashboard-insecure.middlewares: redirect-to-https
traefik.http.routers.dashboard-secure.rule: Host(`${DOMAIN}`) && PathPrefix(`/`)
traefik.http.routers.dashboard-secure.service: dashboard
traefik.http.routers.dashboard-secure.entrypoints: websecure
traefik.http.routers.dashboard-secure.tls.certresolver: myresolver
# Local domain
traefik.http.routers.dashboard-local-insecure.rule: Host(`${LOCAL_DOMAIN}`)
traefik.http.routers.dashboard-local-insecure.entrypoints: web
traefik.http.routers.dashboard-local-insecure.service: dashboard
traefik.http.routers.dashboard-local-insecure.middlewares: redirect-to-https
# Secure
traefik.http.routers.dashboard-local.rule: Host(`${LOCAL_DOMAIN}`)
traefik.http.routers.dashboard-local.entrypoints: websecure
traefik.http.routers.dashboard-local.tls: true
traefik.http.routers.dashboard-local.service: dashboard
networks:
tipi_main_network:
driver: bridge
name: runtipi_tipi_main_network
评论区