ci: switch to Portainer auto-build (like mein118.ch)
This commit is contained in:
@@ -1,29 +1,7 @@
|
|||||||
name: Build and Deploy
|
# Deployment wird von Portainer erledigt (nicht Gitea Actions).
|
||||||
|
# Portainer Stack zeigt auf dieses Repo und baut bei Push automatisch neu.
|
||||||
on:
|
# Siehe docker-compose.portainer.yml für Details.
|
||||||
push:
|
#
|
||||||
branches: [main]
|
# Dieses File ist leer damit keine pending Jobs mehr entstehen.
|
||||||
|
name: disabled
|
||||||
jobs:
|
on: workflow_dispatch
|
||||||
deploy:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Login to Registry
|
|
||||||
run: |
|
|
||||||
echo "${{ secrets.REGISTRY_TOKEN }}" | docker login 192.168.1.183:3100 -u ${{ secrets.REGISTRY_USERNAME }} --password-stdin
|
|
||||||
|
|
||||||
- name: Build Docker Image
|
|
||||||
run: |
|
|
||||||
docker build -t 192.168.1.183:3100/adminpepe/lageplan:latest .
|
|
||||||
|
|
||||||
- name: Push to Registry
|
|
||||||
run: |
|
|
||||||
docker push 192.168.1.183:3100/adminpepe/lageplan:latest
|
|
||||||
|
|
||||||
- name: Redeploy via Portainer
|
|
||||||
if: ${{ secrets.PORTAINER_WEBHOOK != '' }}
|
|
||||||
run: |
|
|
||||||
curl -sf -X POST "${{ secrets.PORTAINER_WEBHOOK }}" || echo "Portainer webhook failed (optional)"
|
|
||||||
|
|||||||
@@ -1,18 +1,23 @@
|
|||||||
##############################################
|
##############################################
|
||||||
# Lageplan — Portainer Stack Configuration
|
# Lageplan — Portainer Stack (Auto-Deploy)
|
||||||
#
|
#
|
||||||
# Verwendung in Portainer:
|
# Setup in Portainer:
|
||||||
# 1. Stacks → Add Stack
|
# 1. Stacks → Add Stack → "Repository"
|
||||||
# 2. "Upload" oder diesen Inhalt einfügen
|
# 2. Git-URL: https://git.purepixel.ch/adminpepe/Lageplan.git
|
||||||
# 3. Environment-Variablen setzen (siehe unten)
|
# 3. Compose-Pfad: docker-compose.portainer.yml
|
||||||
# 4. Deploy
|
# 4. "GitOps updates" aktivieren + Webhook kopieren
|
||||||
|
# 5. Webhook in Gitea eintragen (Repo → Einstellungen → Webhooks)
|
||||||
|
# 6. Environment-Variablen setzen (siehe unten)
|
||||||
|
# 7. Deploy
|
||||||
|
#
|
||||||
|
# Danach: Push auf main → Portainer baut automatisch neu
|
||||||
#
|
#
|
||||||
# Benötigte Environment-Variablen:
|
# Benötigte Environment-Variablen:
|
||||||
# POSTGRES_USER (default: lageplan)
|
# POSTGRES_USER (default: lageplan)
|
||||||
# POSTGRES_PASSWORD (ÄNDERN!)
|
# POSTGRES_PASSWORD (ÄNDERN!)
|
||||||
# POSTGRES_DB (default: lageplan)
|
# POSTGRES_DB (default: lageplan)
|
||||||
# NEXTAUTH_SECRET (ÄNDERN! — z.B. openssl rand -base64 32)
|
# NEXTAUTH_SECRET (ÄNDERN! — z.B. openssl rand -base64 32)
|
||||||
# NEXTAUTH_URL (z.B. https://lageplan.example.com)
|
# NEXTAUTH_URL (z.B. https://lageplan.ch)
|
||||||
# MINIO_ROOT_USER (default: minioadmin)
|
# MINIO_ROOT_USER (default: minioadmin)
|
||||||
# MINIO_ROOT_PASSWORD (ÄNDERN!)
|
# MINIO_ROOT_PASSWORD (ÄNDERN!)
|
||||||
# MINIO_PUBLIC_URL (z.B. https://s3.example.com)
|
# MINIO_PUBLIC_URL (z.B. https://s3.example.com)
|
||||||
@@ -77,7 +82,10 @@ services:
|
|||||||
|
|
||||||
# ─── Lageplan Web App ──────────────────────
|
# ─── Lageplan Web App ──────────────────────
|
||||||
web:
|
web:
|
||||||
image: 192.168.1.183:3100/adminpepe/lageplan:latest
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
image: git.purepixel.ch/adminpepe/lageplan:latest
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
DATABASE_URL: postgresql://${POSTGRES_USER:-lageplan}:${POSTGRES_PASSWORD:-lageplan_secret}@db:5432/${POSTGRES_DB:-lageplan}
|
DATABASE_URL: postgresql://${POSTGRES_USER:-lageplan}:${POSTGRES_PASSWORD:-lageplan_secret}@db:5432/${POSTGRES_DB:-lageplan}
|
||||||
@@ -100,6 +108,19 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- lageplan
|
- lageplan
|
||||||
|
|
||||||
|
# ─── Watchtower (Auto-Restart bei neuen Images) ─
|
||||||
|
watchtower:
|
||||||
|
image: containrrr/watchtower
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
environment:
|
||||||
|
WATCHTOWER_POLL_INTERVAL: 60
|
||||||
|
WATCHTOWER_CLEANUP: "true"
|
||||||
|
WATCHTOWER_LABEL_ENABLE: "false"
|
||||||
|
networks:
|
||||||
|
- lageplan
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
postgres_data:
|
postgres_data:
|
||||||
minio_data:
|
minio_data:
|
||||||
|
|||||||
Reference in New Issue
Block a user