Files
WebHosting/docker-compose.yaml
Basil Bruhn d7225969d8 woodpecker
Signed-off-by: Basil Bruhn <basil.bruhn@psi.ch>
2025-07-08 15:57:43 +02:00

154 lines
4.4 KiB
YAML

services:
# linux-eng@psi.ch
nginx:
image: nginx:latest
container_name: nginx_proxy
restart: always
ports:
- "80:80"
- "443:443"
volumes:
- /etc/pki/tls/certs:/etc/nginx/certs:ro
- /etc/pki/tls/private:/etc/nginx/private:ro
- /etc/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
- /etc/nginx/conf.d:/etc/nginx/conf.d:ro
networks:
- public
- backend
# linux-eng@psi.ch
excalidraw:
image: excalidraw/excalidraw:latest
container_name: excalidraw
restart: always
networks:
- backend
# Rostomyan Tigran <tigran.rostomyan@psi.ch>
# INC0137443
pif-elog:
image: gitea.psi.ch/images/elog:3.1.5
container_name: pif-elog
restart: always
volumes:
- /opt/logbooks/pif:/usr/local/elog/logbooks
- /opt/webcontent/pif/elog.cfg:/usr/local/elog/elogd.cfg
networks:
- backend
# Krieger Jonas Andreas <jonas.krieger@psi.ch>, Raselli Andrea-Raeto <andrea.raselli@psi.ch>
# Elog as a Service PoC mit musr-elog.psi.ch? linux-eng@psi.ch
lmu-elog:
image: gitea.psi.ch/images/elog:3.1.5
container_name: lmu-elog
restart: always
volumes:
- /opt/logbooks/LMU:/usr/local/elog/logbooks
- /opt/webcontent/LMU/elog.cfg:/usr/local/elog/elogd.cfg
networks:
- backend
# Huang He <river.huang@psi.ch>
# Software host and access to Internet linux-eng@psi.ch
mcda-calculator:
image: gitea.psi.ch/images/mcda-calculator:1.0.3
container_name: mcda-calculator
restart: always
networks:
- backend
# Augustin Sven <sven.augustin@psi.ch>
hedgedoc_app:
image: quay.io/hedgedoc/hedgedoc:1.10.1
container_name: hedgedoc
environment:
- CMD_DB_URL=postgres://${hedgedoc_user}:${hedgedoc_password}@hedgedoc_db:5432/hedgedoc
- CMD_DOMAIN=hedgedoc.psi.ch
- CMD_URL_ADDPORT=false
- CMD_PROTOCOL_USESSL=true
- CMD_LDAP_URL=ldaps://dc00.d.psi.ch
- CMD_LDAP_BINDDN=${bind_user}
- CMD_LDAP_BINDCREDENTIALS=${bind_password}
- CMD_LDAP_SEARCHBASE=OU=users,OU=psi,DC=d,DC=psi,DC=ch
- CMD_LDAP_SEARCHFILTER=(&(objectcategory=person)(objectclass=user)(|(sAMAccountName={{username}})(mail={{username}})))
- CMD_LDAP_USERIDFIELD=sAMAccountName
- CMD_LDAP_PROVIDERNAME="PSI"
- NODE_ENV=production
- CMD_EMAIL=false
- CMD_ALLOW_EMAIL_REGISTER=false
- CMD_SESSION_SECRET=${session_secret}
volumes:
- /opt/webcontent/sf-hedgedoc/uploads:/hedgedoc/public/uploads
restart: always
depends_on:
- hedgedoc_db
networks:
- backend
- hedgedoc_backend
# Augustin Sven <sven.augustin@psi.ch>
hedgedoc_db:
image: postgres:13.4-alpine
container_name: hedgedoc_db
environment:
- POSTGRES_USER={{ hedgedoc_user }}
- POSTGRES_PASSWORD={{ hedgedoc_password }}
- POSTGRES_DB=hedgedoc
volumes:
- /opt/webcontent/sf-hedgedoc/data:/var/lib/postgresql/data
restart: always
networks:
- hedgedoc_backend
#Andreas Luedeke <andreas.luedeke@psi.ch>
gfa-status-test:
image: php:8.2-apache
container_name: gfa-status-test
volumes:
- /opt/webcontent/gfa-status/web:/var/www/html
restart: always
networks:
- backend
# Sven Augustin -Hax0rL0rd
woodpecker-server:
image: woodpeckerci/woodpecker-server:next
container_name: woodpecker_server
ports:
- 8000:8000
volumes:
- /opt/webhosting/woodpecker/server:/var/lib/woodpecker/
environment:
- WOODPECKER_OPEN=true
- WOODPECKER_HOST=https://woodpecker-test.psi.ch
- WOODPECKER_AGENT_SECRET={{ WOODPECKER_AGENT_SECRET }}
- WOODPECKER_GITEA=true
- WOODPECKER_GITEA_URL=https://gitea-test.psi.ch
- WOODPECKER_GITEA_CLIENT={{ WOODPECKER_GITEA_CLIENT }}
- WOODPECKER_GITEA_SECRET={{ WOODPECKER_GITEA_SECRET }}
networks:
- backend
- woodpecker_backend
woodpecker-agent:
image: woodpeckerci/woodpecker-agent:next
container_name: woodpecker_agent
command: agent
restart: always
depends_on:
- woodpecker-server
volumes:
- /opt/webhosting/woodpecker/agent/woodpecker:/etc/woodpecker
- /var/run/docker.sock:/var/run/docker.sock
environment:
- WOODPECKER_SERVER=woodpecker-server:9000
- WOODPECKER_AGENT_SECRET={{ WOODPECKER_AGENT_SECRET }}
networks:
- woodpecker_backend
networks:
public:
backend:
hedgedoc_backend:
woodpecker_backend: