- Created .gitignore to exclude logs and build artifacts. - Added Dockerfile and docker-compose.yml for containerized deployment. - Implemented a video player following SOLID principles with classes for video source, audio control, and volume meter. - Introduced interfaces for audio, video source, and volume meter to ensure adherence to Interface Segregation Principle. - Developed main entry point and HTML structure for the video player application. - Included TypeScript configuration and package.json for project dependencies.
28 lines
1.0 KiB
YAML
28 lines
1.0 KiB
YAML
services:
|
|
techniker-me:
|
|
image: techniker-me:2025.0.4
|
|
container_name: techniker-me
|
|
restart: unless-stopped
|
|
networks:
|
|
- services_traefik-public
|
|
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.techniker-me.entrypoints=https
|
|
- traefik.http.routers.techniker-me.rule=Host(`techniker.me`)
|
|
- traefik.http.routers.techniker-me.tls=true
|
|
- traefik.http.routers.techniker-me.tls.certresolver=cloudflare
|
|
- traefik.http.services.techniker-me.loadbalancer.server.port=80
|
|
# --- ADD THESE LINES FOR CORS ---
|
|
# 1. Define the middleware
|
|
- "traefik.http.middlewares.hls-cors.headers.accesscontrolalloworiginlist=*"
|
|
- "traefik.http.middlewares.hls-cors.headers.accesscontrolallowmethods=GET,OPTIONS"
|
|
- "traefik.http.middlewares.hls-cors.headers.accesscontrolallowheaders=Content-Type"
|
|
|
|
# 2. Attach middleware to the router
|
|
- "traefik.http.routers.techniker-me.middlewares=hls-cors"
|
|
|
|
|
|
networks:
|
|
services_traefik-public:
|
|
external: true |