Deploy e-rechnung steinle to production.

This commit is contained in:
2025-05-12 11:52:39 +02:00
parent 9620037b2d
commit a00e2c2b8c
2 changed files with 123 additions and 0 deletions

68
erechnung-steinle/.env Normal file
View File

@@ -0,0 +1,68 @@
APP_NAME=eRechnung
APP_ENV=production
APP_KEY=base64:qSmM2c7YWgiFKS62S2m6w8pVslaBC8WBIHttObhDu1U=
APP_DEBUG=true
APP_TIMEZONE=UTC
APP_URL=https://e-rechnung.steinle-computer.de
APP_LOCALE=de
APP_CURRENCY=EUR
APP_FALLBACK_LOCALE=en
APP_FAKER_LOCALE=en_US
APP_MAINTENANCE_DRIVER=file
# APP_MAINTENANCE_STORE=database
PHP_CLI_SERVER_WORKERS=4
BCRYPT_ROUNDS=12
LOG_CHANNEL=stack
LOG_STACK=single
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
DB_CONNECTION=pgsql
DB_HOST=pgsql
DB_PORT=5432
DB_DATABASE=steinle
DB_USERNAME=steinle
DB_PASSWORD=$*8D%!nnoiiu6w
SESSION_DRIVER=database
SESSION_LIFETIME=120
SESSION_ENCRYPT=false
SESSION_PATH=/
SESSION_DOMAIN=null
BROADCAST_CONNECTION=log
FILESYSTEM_DISK=local
QUEUE_CONNECTION=database
CACHE_STORE=database
CACHE_PREFIX=
MEMCACHED_HOST=127.0.0.1
REDIS_CLIENT=phpredis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=smtp
MAIL_HOST=mail
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false
VITE_APP_NAME="${APP_NAME}"
VITE_APP_URL="${APP_URL}/api"

View File

@@ -0,0 +1,55 @@
networks:
proxy:
external: true
invoice-steinle:
volumes:
invoice-steinle-db:
invoice-steinle-storage:
name: invoice-steinle-storage
services:
app:
image: cs-git.ddnss.de/ri-st/project:master
restart: always
dns:
- '8.8.8.8'
links:
- pgsql
depends_on:
pgsql:
condition: service_healthy
working_dir: /var/www
volumes:
- ./.env:/var/www/.env
- invoice-steinle-storage:/var/www/storage/app/public
networks:
- proxy
- invoice-steinle
labels:
- "traefik.enable=true"
- "traefik.http.routers.invoice-steinle.rule=Host(`e-rechnung.steinle-computer.de`)"
- "traefik.http.routers.invoice-steinle.entrypoints=web"
- "traefik.http.routers.invoice-steinle.middlewares=invoice-steinle"
- "traefik.http.middlewares.invoice-steinle.redirectscheme.scheme=https"
- "traefik.http.routers.invoice-steinle-secure.rule=Host(`e-rechnung.steinle-computer.de`)"
- "traefik.http.routers.invoice-steinle-secure.entrypoints=websecure"
- "traefik.http.routers.invoice-steinle-secure.tls=true"
- "traefik.http.routers.invoice-steinle-secure.tls.certresolver=cs"
- "traefik.http.routers.invoice-steinle-secure.service=invoice-steinle-secure"
- "traefik.http.services.invoice-steinle-secure.loadbalancer.server.port=80"
pgsql:
image: postgres:17-alpine
restart: unless-stopped
volumes:
- invoice-steinle-db:/var/lib/postgresql/data
networks:
- invoice-steinle
environment:
PGPASSWORD: $*8D%!nnoiiu6w
POSTGRES_PASSWORD: $*8D%!nnoiiu6w
POSTGRES_USER: steinle
POSTGRES_DB: steinle
healthcheck:
test: ["CMD-SHELL", "pg_isready -U steinle"]