Add kimai stack for Scheidle.

This commit is contained in:
2024-02-06 17:07:35 +01:00
parent 63ad455bda
commit 1a656c304c
3 changed files with 103 additions and 0 deletions

8
kimai-scheidle/.env Normal file
View File

@@ -0,0 +1,8 @@
ADMIN_USER=SAdmin
ADMIN_PASS=paE76zrCZfhA6Fbx1MUM
APP_SECRET=gwot394*Gt
DB_USER=kimai
DB_NAME=kimai
DB_PASS=xXW5dnQoMpAmdXrQgUgU

View File

@@ -0,0 +1,70 @@
version: "3.9"
volumes:
kimai:
name: kimai-scheidle
kimai-db:
name: kimai-scheidle-db
networks:
proxy:
external: true
kimai:
name: kimai-scheidle
external: false
services:
kimai:
image: kimai/kimai2:fpm
container_name: kimai-scheidle
hostname: kimai-scheidle
restart: unless-stopped
environment:
ADMINMAIL: ${ADMIN_USER}
ADMINPASS: ${ADMIN_PASS}
DATABASE_URL: mysql://${DB_USER}:${DB_PASS}@kimai-scheidle-db/${DB_NAME}?charset=utf8&serverVersion=8.1.0
TRUSTED_HOSTS: kimai.lan,kimai-web,localhost,127.0.0.1
APP_SECRET: ${APP_SECRET}
depends_on:
- kimai-scheidle-db
networks:
- kimai-scheidle
volumes:
- kimai-scheidle:/opt/kimai/public
kimai-web:
image: nginx:alpine
container_name: kimai-scheidle-web
hostname: kimai-scheidle-web
restart: unless-stopped
labels:
- "traefik.enable=true"
- "traefik.http.routers.kimai-scheidle.entrypoints=web"
- "traefik.http.routers.kimai-scheidle.rule=Host(`scheidle.ri-st.de`)"
- "traefik.http.services.kimai-scheidle.loadbalancer.server.port=80"
depends_on:
- kimai-scheidle
networks:
- proxy
- kimai-scheidle
volumes:
- kimai-scheidle:/opt/kimai/public:ro
- ${PWD}/kimai.conf:/etc/nginx/conf.d/default.conf
kimai-db:
image: mysql:8
container_name: kimai-scheidle-db
hostname: kimai-scheidle-db
command: --default-authentication-plugin=mysql_native_password
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: ${DB_PASS}
MYSQL_USER: ${DB_USER}
MYSQL_PASSWORD: ${DB_PASS}
MYSQL_DATABASE: ${DB_NAME}
volumes:
- kimai-scheidle-db:/var/lib/mysql
networks:
- kimai-scheidle
healthcheck:
test: ["CMD-SHELL", "mysqladmin ping -u$${DB_USER} -p$$(DB_PASS)"]

25
kimai-scheidle/kimai.conf Normal file
View File

@@ -0,0 +1,25 @@
server {
listen 80;
index index.php;
server_name scheidle.ri-st.de;
root /opt/kimai/public;
# cache static asset files
location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ {
expires max;
log_not_found off;
}
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ ^/index\.php(/|$) {
fastcgi_pass kimai:9000;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
internal;
}
}