version: "3.9" volumes: repository-service-tuf-worker-data: repository-service-tuf-mq-data: repository-service-tuf-storage: repository-service-tuf-keystorage: repository-service-tuf-redis-data: services: rabbitmq: image: rabbitmq:3-management-alpine ports: - 5672:5672 - 15672:15672 volumes: - "repository-service-tuf-mq-data:/var/lib/rabbitmq" - "repository-service-tuf-storage:/var/opt/repository-service-tuf/storage" - "repository-service-tuf-keystorage:/var/opt/repository-service-tuf/keystorage" healthcheck: test: "exit 0" restart: always tty: true redis: image: redis:4.0 volumes: - repository-service-tuf-redis-data:/data ports: - "6379:6379" healthcheck: test: "exit 0" restart: always tty: true repository-service-tuf-worker: image: ghcr.io/vmware/repository-service-tuf-worker:dev # Developers: For local build repository-service-tuf-worker, uncomment the line below # On repository-service-tuf-worker, run make build-dev # # image: repository-service-tuf-worker:dev volumes: - repository-service-tuf-worker-data:/data - repository-service-tuf-storage:/var/opt/repository-service-tuf/storage - repository-service-tuf-keystorage:/var/opt/repository-service-tuf/keystorage environment: - RSTUF_STORAGE_BACKEND="LocalStorage" - RSTUF_KEYVAULT_BACKEND="LocalKeyVault" - RSTUF_LOCAL_STORAGE_BACKEND_PATH="/var/opt/repository-service-tuf/storage" - RSTUF_LOCAL_KEYVAULT_PATH="/var/opt/repository-service-tuf/keystorage" - RSTUF_BROKER_SERVER="amqp://guest:guest@rabbitmq:5672" - RSTUF_REDIS_SERVER="redis://redis" - RSTUF_WORKER_ID="dev" healthcheck: test: "exit 0" restart: always tty: true web: image: python:3.10-slim-buster command: python -m http.server -d /var/opt/repository-service-tuf/storage 8080 volumes: - repository-service-tuf-storage:/var/opt/repository-service-tuf/storage ports: - "8080:8080" repository-service-tuf-api: build: context: . entrypoint: uvicorn app:rstuf_app --host 0.0.0.0 --port 80 --reload ports: - 80:80 environment: - DATA_DIR=./data - RSTUF_BOOTSTRAP_NODE=true - RSTUF_BROKER_SERVER="amqp://guest:guest@rabbitmq:5672" - RSTUF_REDIS_SERVER="redis://redis" - SECRETS_RSTUF_TOKEN_KEY="secret" - SECRETS_RSTUF_ADMIN_PASSWORD="secret" volumes: - ./:/opt/repository-service-tuf-api:z depends_on: rabbitmq: condition: service_healthy redis: condition: service_healthy repository-service-tuf-worker: condition: service_healthy