64 lines
1.9 KiB
YAML
64 lines
1.9 KiB
YAML
version: "3.2"
|
|
|
|
services:
|
|
traefik:
|
|
image: traefik:1.7-alpine
|
|
container_name: traefik
|
|
command:
|
|
- "--logLevel=INFO"
|
|
- "--defaultentrypoints=http,https"
|
|
- "--entryPoints=Name:http Address::80 Redirect.EntryPoint:https"
|
|
- "--entryPoints=Name:https Address::443 TLS"
|
|
- "--docker"
|
|
- "--docker.exposedbydefault=false"
|
|
- "--docker.domain=example.com"
|
|
- "--acme=false"
|
|
- "--acme.acmelogging=true"
|
|
- "--acme.email=webmaster@example.com"
|
|
- "--acme.storage=acme.json"
|
|
- "--acme.entryPoint=https"
|
|
- "--acme.onhostrule=true"
|
|
- "--acme.httpchallenge=true"
|
|
- "--acme.httpchallenge.entrypoint=http"
|
|
ports:
|
|
- target: 80
|
|
published: 80
|
|
protocol: tcp
|
|
- target: 443
|
|
published: 443
|
|
protocol: tcp
|
|
volumes:
|
|
- "./acme.json:/acme.json"
|
|
- "/var/run/docker.sock:/var/run/docker.sock"
|
|
restart: always
|
|
|
|
app:
|
|
image: crazymax/jetbrains-license-server:latest
|
|
container_name: jetbrains_license_server
|
|
depends_on:
|
|
- traefik
|
|
volumes:
|
|
- "jetbrains-license-server:/data"
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.backend=jetbrains-license-server"
|
|
- "traefik.port=8000"
|
|
- "traefik.frontend.rule=Host:jetbrains-license-server.example.com,an-other-host.example.com"
|
|
environment:
|
|
- "TZ=Europe/Paris"
|
|
- "JLS_VIRTUAL_HOSTS=jetbrains-license-server.example.com,an-other-host.example.com"
|
|
- "JLS_CONTEXT=/"
|
|
- "JLS_ACCESS_CONFIG=/data/access-config.json"
|
|
- "JLS_STATS_RECIPIENTS=webmaster@example.com,an-other-address@example.com"
|
|
- "JLS_REPORT_OUT_OF_LICENSE=90"
|
|
- "JLS_SMTP_SERVER=smtp.example.com"
|
|
- "JLS_SMTP_PORT=25"
|
|
- "JLS_SMTP_USERNAME=smtp@example.com"
|
|
- "JLS_SMTP_PASSWORD="
|
|
- "JLS_STATS_FROM=jetbrains@example.com"
|
|
- "JLS_STATS_TOKEN=0123456789ABCDEF"
|
|
restart: always
|
|
|
|
volumes:
|
|
jetbrains-license-server:
|