Skip to content

Commit

Permalink
Create docker-compose.yml with images from registry
Browse files Browse the repository at this point in the history
  • Loading branch information
beasteers authored Dec 21, 2023
1 parent 5ee5c2e commit 38cbfd4
Showing 1 changed file with 225 additions and 0 deletions.
225 changes: 225 additions & 0 deletions registry/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,225 @@
version: '3.7'

services:

# api

api:
image: ghcr.io/vida-nyu/ptg-api-server:main
container_name: api
ports:
- 7890:8000
volumes:
- ${VOLUMES:-./data}/recordings:/data/recordings
environment:
REDIS_URL: redis://redis:6379
MONGO_URL: mongodb://mongo:27017
depends_on:
- redis
- mongo
restart: unless-stopped
labels:
- "traefik.enable=true"
- "traefik.http.routers.api.rule=Host(`api.${DOMAIN:-localhost}`)"
- "traefik.http.services.api.loadbalancer.server.port=8000"

# communication

redis:
image: redis
container_name: redis
restart: unless-stopped
ports:
- 6379:6379
volumes:
- ${VOLUMES:-./data}/redis-data:/data
environment:
ALLOW_EMPTY_PASSWORD: 'yes'
healthcheck:
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]

# storage

mongo:
image: mongo:latest
container_name: mongo
restart: unless-stopped
environment:
MONGO_INITDB_ROOT_USERNAME: ${ADMIN_USER:-admin}
MONGO_INITDB_ROOT_PASSWORD: ${ADMIN_PASS:-admin}
volumes:
- ${VOLUMES:-./data}/mongo:/data/db
# - ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js
ports:
- 27017:27017

mongo-express:
image: mongo-express
container_name: mongo_express
restart: unless-stopped
ports:
- 8034:8081
environment:
# ME_CONFIG_MONGODB_URL: mongodb://mongo:27017/
ME_CONFIG_MONGODB_SERVER: mongo
ME_CONFIG_MONGODB_ADMINUSERNAME: ${ADMIN_USER:-admin}
ME_CONFIG_MONGODB_ADMINPASSWORD: ${ADMIN_PASS:-admin}
ME_CONFIG_BASICAUTH_USERNAME: ${ADMIN_USER:-admin}
ME_CONFIG_BASICAUTH_PASSWORD: ${ADMIN_PASS:-admin}
labels:
- "traefik.enable=true"
- "traefik.http.routers.mongo.rule=Host(`mongoex.${DOMAIN:-localhost}`)"
- "traefik.http.routers.mongo.entrypoints=web"
- "traefik.http.services.mongo.loadbalancer.server.port=8081"

# visualization

dash:
image: ghcr.io/vida-nyu/tim-dashboard:demo-november-2023-apiurl
container_name: dash
restart: unless-stopped
ports:
- "3010:80"
labels:
- "traefik.enable=true"
- "traefik.http.routers.tim-dash.rule=Host(`online.${DOMAIN:-localhost}`)"
- "traefik.http.routers.tim-dash.entrypoints=web"
- "traefik.http.services.tim-dash.loadbalancer.server.port=80"

# argus:
# image: ghcr.io/vida-nyu/argus2:main
# container_name: argus
# restart: unless-stopped
# ports:
# - "3000:80"
# labels:
# - "traefik.enable=true"
# - "traefik.http.routers.tim-dash.rule=Host(`argus.${DOMAIN:-localhost}`)"
# - "traefik.http.routers.tim-dash.entrypoints=web"
# - "traefik.http.services.tim-dash.loadbalancer.server.port=80"

# # perception & reasoning

# perception:
# image: ghcr.io/vida-nyu/ptg-server-ml-perception:main
# container_name: perception
# restart: unless-stopped
# volumes:
# - /dev/shm:/dev/shm
# - ${VOLUMES:-./data}/models:/src/app/models
# - ${VOLUMES:-./data}/models/cache:/root/.cache
# - ${VOLUMES:-./data}/models/torch_iocache:/root/.torch/iopath_cache
# environment:
# PYTHONUNBUFFERED: "1"
# # devices:
# # - /dev/nvidia1:/dev/nvidia0
# # - /dev/nvidia0:/dev/nvidia1
# # deploy:
# # resources:
# # reservations:
# # devices:
# # - driver: nvidia
# # count: 2
# # capabilities: [gpu]

# reasoning:
# image: ghcr.io/vida-nyu/ptg-server-ml-reasoning:main
# container_name: reasoning
# restart: unless-stopped
# volumes:
# - ${VOLUMES:-./data}/models/reasoning:/src/app/models
# - ${VOLUMES:-./data}/models/reasoning/nltk:/usr/share/nltk_data
# - ${VOLUMES:-./data}/models/reasoning/spacy:/opt/conda/lib/python3.8/site-packages/en_core_web_lg
# # devices:
# # - /dev/nvidia0:/dev/nvidia0
# # deploy:
# # resources:
# # reservations:
# # devices:
# # - driver: nvidia
# # count: 1
# # capabilities: [gpu]

# memory:
# image: ghcr.io/vida-nyu/ptg-server-ml-3d-memory:main
# container_name: memory
# restart: unless-stopped

# 3d-memory-sync:
# image: ghcr.io/vida-nyu/ptg-server-ml-3d-memory:main
# container_name: 3d-memory-sync
# command: main.py sync run
# restart: unless-stopped

# recorders

raw_recorder:
image: ghcr.io/vida-nyu/ptg-server-ml-record:main
container_name: raw_recorder
restart: unless-stopped
# command: python -m ptgprocess.processors.record raw run --continuous
command: sleep 100000
volumes:
- ${VOLUMES:-./data}/recordings/raw:/src/app/recordings

video_recorder:
image: ghcr.io/vida-nyu/ptg-server-ml-record:main
container_name: video_recorder
restart: unless-stopped
command: python -m ptgprocess.processors.record video run --continuous
volumes:
- ${VOLUMES:-./data}/recordings/post:/src/app/recordings
- ${VOLUMES:-./data}/recordings/raw:/src/app/raw

audio_recorder:
image: ghcr.io/vida-nyu/ptg-server-ml-record:main
container_name: audio_recorder
restart: unless-stopped
command: python -m ptgprocess.processors.record audio run --continuous
volumes:
- ${VOLUMES:-./data}/recordings/post:/src/app/recordings
- ${VOLUMES:-./data}/recordings/raw:/src/app/raw

json_recorder:
image: ghcr.io/vida-nyu/ptg-server-ml-record:main
container_name: json_recorder
restart: unless-stopped
command: python -m ptgprocess.processors.record json run --continuous
volumes:
- ${VOLUMES:-./data}/recordings/post:/src/app/recordings
- ${VOLUMES:-./data}/recordings/raw:/src/app/raw

pointcloud_recorder:
image: ghcr.io/vida-nyu/ptg-server-ml-record:main
container_name: pointcloud_recorder
restart: unless-stopped
command: python -m ptgprocess.processors.record pointcloud run --continuous
volumes:
- ${VOLUMES:-./data}/recordings/post:/src/app/recordings
- ${VOLUMES:-./data}/recordings/raw:/src/app/raw




# traefik:
# container_name: ptg-traefik
# image: traefik:v2.7 #traefik:latest
# restart: unless-stopped
# ports:
# - "80:80"
# - "443:443"
# command:
# - "--ping"
# - "--api.insecure=true"
# - "--api.dashboard=true"
# - "--log.level=debug"
# - "--providers.docker=true"
# - "--providers.docker.exposedbydefault=true"
# - "--providers.docker.network=floodnet_application_default"
# - "--entrypoints.web.address=:80"
# volumes:
# # - ./config:/etc/traefik
# # - ./.acme.json:/acme.json
# - /var/run/docker.sock:/var/run/docker.sock:ro
# healthcheck:
# test: traefik healthcheck --ping

0 comments on commit 38cbfd4

Please sign in to comment.