services: db: image: postgres:18.1-alpine3.22 container_name: postgres networks: - api-network environment: POSTGRES_DB: ${PROJ_NAME:-temp_api} POSTGRES_USER: ${DB_USERNAME:-postgres} POSTGRES_PASSWORD: ${DB_PASSWORD:-postgres} volumes: - db-data:/var/lib/postgresql/data ports: - "5432:5432" redis: image: redis:8.4.0-alpine restart: unless-stopped container_name: redis networks: - api-network ports: - "6379:6379" command: redis-server --save 60 1 --loglevel warning redis-commander: container_name: redis-commander hostname: redis-commander image: rediscommander/redis-commander:latest environment: - REDIS_HOST=redis ports: - "127.0.0.1:8081:8081" depends_on: - redis restart: unless-stopped # api: # build: # context: . # dockerfile: Dockerfile # networks: # - api-network # ports: # - "8080:8080" # - "9090:9090" # for GRPC API # depends_on: # - db # - redis # container_name: ${PROJ_NAME:-temp_api}-api # environment: # - DB_ADDR=${DB_ADDR} # db:5432 inside the docker network # - REDIS_ADDR=${REDIS_ADDR} # redis:6379 inside the docker network # - SERVER_ADDRESS=0.0.0.0:${SERVER_ADDR:-8080} # entrypoint: ["/api/wait-for.sh", "db:5432", "--", "/api/start.sh"] # command: ["/api/main"] volumes: db-data: networks: api-network: driver: bridge