1ac6fdf827
I am not sure when it happens, it can be when we removed the NGINX_IP, or when we checked that every services were using ports OR network_mode but we exposed nginx and boots over the same port. This commit fixes that. Signed-off-by: Gianluca Arbezzano <gianarb92@gmail.com>
174 lines
4.9 KiB
YAML
174 lines
4.9 KiB
YAML
version: "2.1"
|
|
services:
|
|
tink-server:
|
|
image: ${TINKERBELL_TINK_SERVER_IMAGE}
|
|
restart: unless-stopped
|
|
environment:
|
|
FACILITY: ${FACILITY:-onprem}
|
|
PACKET_ENV: ${PACKET_ENV:-testing}
|
|
PACKET_VERSION: ${PACKET_VERSION:-ignored}
|
|
ROLLBAR_TOKEN: ${ROLLBAR_TOKEN:-ignored}
|
|
ROLLBAR_DISABLE: ${ROLLBAR_DISABLE:-1}
|
|
PGDATABASE: tinkerbell
|
|
PGHOST: db
|
|
PGPASSWORD: tinkerbell
|
|
PGPORT: 5432
|
|
PGSSLMODE: disable
|
|
PGUSER: tinkerbell
|
|
TINKERBELL_GRPC_AUTHORITY: :42113
|
|
TINKERBELL_HTTP_AUTHORITY: :42114
|
|
TINK_AUTH_USERNAME: ${TINKERBELL_TINK_USERNAME}
|
|
TINK_AUTH_PASSWORD: ${TINKERBELL_TINK_PASSWORD}
|
|
depends_on:
|
|
tink-server-migration:
|
|
condition: service_started
|
|
db:
|
|
condition: service_healthy
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- 127.0.0.1:42114/cert"] # port needs to match TINKERBELL_HTTP_AUTHORITY
|
|
interval: 5s
|
|
timeout: 2s
|
|
retries: 30
|
|
volumes:
|
|
- ./state/certs:/certs/${FACILITY:-onprem}
|
|
ports:
|
|
- 42113:42113/tcp
|
|
- 42114:42114/tcp
|
|
|
|
tink-server-migration:
|
|
image: ${TINKERBELL_TINK_SERVER_IMAGE}
|
|
restart: on-failure
|
|
environment:
|
|
ONLY_MIGRATION: "true"
|
|
FACILITY: ${FACILITY:-onprem}
|
|
PGDATABASE: tinkerbell
|
|
PGHOST: db
|
|
PGPASSWORD: tinkerbell
|
|
PGPORT: 5432
|
|
PGSSLMODE: disable
|
|
PGUSER: tinkerbell
|
|
TINKERBELL_GRPC_AUTHORITY: :42113
|
|
TINKERBELL_HTTP_AUTHORITY: :42114
|
|
TINK_AUTH_USERNAME: ${TINKERBELL_TINK_USERNAME}
|
|
TINK_AUTH_PASSWORD: ${TINKERBELL_TINK_PASSWORD}
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
volumes:
|
|
- ./state/certs:/certs/${FACILITY:-onprem}
|
|
|
|
db:
|
|
image: postgres:10-alpine
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_DB: tinkerbell
|
|
POSTGRES_PASSWORD: tinkerbell
|
|
POSTGRES_USER: tinkerbell
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data:rw
|
|
ports:
|
|
- 5432:5432
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U tinkerbell"]
|
|
interval: 1s
|
|
timeout: 1s
|
|
retries: 30
|
|
|
|
tink-cli:
|
|
image: ${TINKERBELL_TINK_CLI_IMAGE}
|
|
restart: unless-stopped
|
|
environment:
|
|
TINKERBELL_GRPC_AUTHORITY: 127.0.0.1:42113
|
|
TINKERBELL_CERT_URL: http://127.0.0.1:42114/cert
|
|
depends_on:
|
|
tink-server:
|
|
condition: service_healthy
|
|
db:
|
|
condition: service_healthy
|
|
network_mode: host
|
|
|
|
registry:
|
|
build:
|
|
context: registry
|
|
args:
|
|
REGISTRY_USERNAME: $TINKERBELL_REGISTRY_USERNAME
|
|
REGISTRY_PASSWORD: $TINKERBELL_REGISTRY_PASSWORD
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "curl --cacert /certs/ca.pem https://127.0.0.1"]
|
|
interval: 5s
|
|
timeout: 1s
|
|
retries: 5
|
|
environment:
|
|
REGISTRY_HTTP_ADDR: 0.0.0.0:443
|
|
REGISTRY_HTTP_TLS_CERTIFICATE: /certs/server.pem
|
|
REGISTRY_HTTP_TLS_KEY: /certs/server-key.pem
|
|
REGISTRY_AUTH: htpasswd
|
|
REGISTRY_AUTH_HTPASSWD_REALM: "Registry Realm"
|
|
REGISTRY_AUTH_HTPASSWD_PATH: /auth/htpasswd
|
|
volumes:
|
|
- ./state/certs:/certs
|
|
- ./state/registry:/var/lib/registry
|
|
network_mode: host
|
|
|
|
boots:
|
|
image: ${TINKERBELL_TINK_BOOTS_IMAGE}
|
|
restart: unless-stopped
|
|
network_mode: host
|
|
environment:
|
|
API_AUTH_TOKEN: ${PACKET_API_AUTH_TOKEN:-ignored}
|
|
API_CONSUMER_TOKEN: ${PACKET_CONSUMER_TOKEN:-ignored}
|
|
FACILITY_CODE: ${FACILITY:-onprem}
|
|
PACKET_ENV: ${PACKET_ENV:-testing}
|
|
PACKET_VERSION: ${PACKET_VERSION:-ignored}
|
|
ROLLBAR_TOKEN: ${ROLLBAR_TOKEN:-ignored}
|
|
ROLLBAR_DISABLE: ${ROLLBAR_DISABLE:-1}
|
|
MIRROR_HOST: ${TINKERBELL_HOST_IP:-127.0.0.1}:8080
|
|
DNS_SERVERS: 8.8.8.8
|
|
PUBLIC_IP: $TINKERBELL_HOST_IP
|
|
BOOTP_BIND: :67
|
|
HTTP_BIND: :80
|
|
SYSLOG_BIND: :514
|
|
TFTP_BIND: :69
|
|
DOCKER_REGISTRY: $TINKERBELL_HOST_IP
|
|
REGISTRY_USERNAME: $TINKERBELL_REGISTRY_USERNAME
|
|
REGISTRY_PASSWORD: $TINKERBELL_REGISTRY_PASSWORD
|
|
TINKERBELL_GRPC_AUTHORITY: $TINKERBELL_HOST_IP:42113
|
|
TINKERBELL_CERT_URL: http://$TINKERBELL_HOST_IP:42114/cert
|
|
ELASTIC_SEARCH_URL: $TINKERBELL_HOST_IP:9200
|
|
DATA_MODEL_VERSION: 1
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
|
|
nginx:
|
|
image: nginx:alpine
|
|
restart: unless-stopped
|
|
tty: true
|
|
ports:
|
|
- 8080:80/tcp
|
|
volumes:
|
|
- ./state/webroot:/usr/share/nginx/html/
|
|
|
|
hegel:
|
|
image: ${TINKERBELL_TINK_HEGEL_IMAGE}
|
|
restart: unless-stopped
|
|
network_mode: host
|
|
environment:
|
|
ROLLBAR_TOKEN: ${ROLLBAR_TOKEN-ignored}
|
|
ROLLBAR_DISABLE: 1
|
|
PACKET_ENV: testing
|
|
PACKET_VERSION: ${PACKET_VERSION:-ignored}
|
|
GRPC_PORT: 42115
|
|
HEGEL_FACILITY: ${FACILITY:-onprem}
|
|
HEGEL_USE_TLS: 0
|
|
TINKERBELL_GRPC_AUTHORITY: 127.0.0.1:42113
|
|
TINKERBELL_CERT_URL: http://127.0.0.1:42114/cert
|
|
DATA_MODEL_VERSION: 1
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
|
|
volumes:
|
|
postgres_data:
|