docker files
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
# ──────────────────────────────────────────────────────────────
|
# ──────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
# ── Stage 1: build dependencies ──────────────────────────────
|
# ── Stage 1: build dependencies ──────────────────────────────
|
||||||
FROM python:3.12-slim AS builder
|
FROM docker.io/library/python:3.12-slim AS builder
|
||||||
|
|
||||||
WORKDIR /build
|
WORKDIR /build
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ RUN pip install --no-cache-dir --upgrade pip \
|
|||||||
&& pip install --no-cache-dir .
|
&& pip install --no-cache-dir .
|
||||||
|
|
||||||
# ── Stage 2: runtime image ───────────────────────────────────
|
# ── Stage 2: runtime image ───────────────────────────────────
|
||||||
FROM python:3.12-slim AS runtime
|
FROM docker.io/library/python:3.12-slim AS runtime
|
||||||
|
|
||||||
LABEL maintainer="BanGUI" \
|
LABEL maintainer="BanGUI" \
|
||||||
description="BanGUI backend — fail2ban web management API"
|
description="BanGUI backend — fail2ban web management API"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
# ──────────────────────────────────────────────────────────────
|
# ──────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
# ── Stage 1: install & build ─────────────────────────────────
|
# ── Stage 1: install & build ─────────────────────────────────
|
||||||
FROM node:22-alpine AS builder
|
FROM docker.io/library/node:22-alpine AS builder
|
||||||
|
|
||||||
WORKDIR /build
|
WORKDIR /build
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@ COPY frontend/ /build/
|
|||||||
RUN npm run build
|
RUN npm run build
|
||||||
|
|
||||||
# ── Stage 2: serve with nginx ────────────────────────────────
|
# ── Stage 2: serve with nginx ────────────────────────────────
|
||||||
FROM nginx:1.27-alpine AS runtime
|
FROM docker.io/library/nginx:1.27-alpine AS runtime
|
||||||
|
|
||||||
LABEL maintainer="BanGUI" \
|
LABEL maintainer="BanGUI" \
|
||||||
description="BanGUI frontend — fail2ban web management UI"
|
description="BanGUI frontend — fail2ban web management UI"
|
||||||
|
|||||||
68
Docker/docker-compose.yml
Normal file
68
Docker/docker-compose.yml
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
version: '3.8'
|
||||||
|
services:
|
||||||
|
fail2ban:
|
||||||
|
image: lscr.io/linuxserver/fail2ban:latest
|
||||||
|
container_name: fail2ban
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
- NET_RAW
|
||||||
|
network_mode: host
|
||||||
|
environment:
|
||||||
|
- PUID=1011
|
||||||
|
- PGID=1001
|
||||||
|
- TZ=Etc/UTC
|
||||||
|
- VERBOSITY=-vv #optional
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
- /server/server_fail2ban/config:/config
|
||||||
|
- /server/server_fail2ban/fail2ban-run:/var/run/fail2ban
|
||||||
|
- /var/log:/var/log
|
||||||
|
- /server/server_nextcloud/config/nextcloud.log:/remotelogs/nextcloud/nextcloud.log:ro #optional
|
||||||
|
- /server/server_nginx/data/logs:/remotelogs/nginx:ro #optional
|
||||||
|
- /server/server_gitea/log/gitea.log:/remotelogs/gitea/gitea.log:ro #optional
|
||||||
|
|
||||||
|
|
||||||
|
#- /path/to/homeassistant/log:/remotelogs/homeassistant:ro #optional
|
||||||
|
#- /path/to/unificontroller/log:/remotelogs/unificontroller:ro #optional
|
||||||
|
#- /path/to/vaultwarden/log:/remotelogs/vaultwarden:ro #optional
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
backend:
|
||||||
|
image: git.lpl-mind.de/lukas.pupkalipinski/bangui/backend:latest
|
||||||
|
container_name: bangui-backend
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
fail2ban:
|
||||||
|
condition: service_started
|
||||||
|
environment:
|
||||||
|
BANGUI_DATABASE_PATH: "/data/bangui.db"
|
||||||
|
BANGUI_FAIL2BAN_SOCKET: "/var/run/fail2ban/fail2ban.sock"
|
||||||
|
BANGUI_FAIL2BAN_CONFIG_DIR: "/config/fail2ban"
|
||||||
|
BANGUI_LOG_LEVEL: "info"
|
||||||
|
BANGUI_SESSION_SECRET: "${BANGUI_SESSION_SECRET:?Set BANGUI_SESSION_SECRET}"
|
||||||
|
BANGUI_TIMEZONE: "${BANGUI_TIMEZONE:-UTC}"
|
||||||
|
volumes:
|
||||||
|
- /server/server_fail2ban/bangui-data:/data
|
||||||
|
- /server/server_fail2ban/fail2ban-run:/var/run/fail2ban:ro
|
||||||
|
- /server/server_fail2ban/config:/config:rw
|
||||||
|
expose:
|
||||||
|
- "8000"
|
||||||
|
networks:
|
||||||
|
- bangui-net
|
||||||
|
|
||||||
|
# ── Frontend (nginx serving built SPA + API proxy) ──────────
|
||||||
|
frontend:
|
||||||
|
image: git.lpl-mind.de/lukas.pupkalipinski/bangui/frontend:latest
|
||||||
|
container_name: bangui-frontend
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "${BANGUI_PORT:-8080}:80"
|
||||||
|
depends_on:
|
||||||
|
backend:
|
||||||
|
condition: service_started
|
||||||
|
networks:
|
||||||
|
- bangui-net
|
||||||
|
|
||||||
|
networks:
|
||||||
|
bangui-net:
|
||||||
|
name: bangui-net
|
||||||
Reference in New Issue
Block a user