sha256:daf4bef727764242337f8e05eb54d7b9e1ef08e599f734ab151bd063429a2b6a
Last pushed
10 days by nurmukhammad767
Type
Compose
Manifest digest
sha256:daf4bef727764242337f8e05eb54d7b9e1ef08e599f734ab151bd063429a2b6a
services:
backend:
image: nurmukhammad767/user-api-backend:latest
environment:
DB_HOST: ${DB_HOST}
DB_PORT: ${DB_PORT}
DB_NAME: ${DB_NAME}
DB_USERNAME: ${DB_USERNAME}
DB_PASSWORD: ${DB_PASSWORD}
MINIO_ENDPOINT: http://minio:9000
MINIO_ACCESS_KEY: ${M_USER}
MINIO_SECRET_KEY: ${M_PASSWORD}
MINIO_BUCKET: ${MINIO_BUCKET:-uploads}
restart: unless-stopped
depends_on:
db:
condition: "service_healthy"
logging:
driver: "json-file"
options:
max-size: "20m"
max-file: "4"
compress: "true"
mem_limit: 512m
healthcheck:
test: ["CMD-SHELL", "bash -c '</dev/tcp/127.0.0.1/8080'"]
interval: 15s
timeout: 5s
retries: 8
start_period: 120s
networks:
- backend_network
- db_network
redis:
image: redis:8.10.1
networks:
- backend_network
healthcheck:
test: ["CMD-SHELL", "redis-cli ping"]
interval: 30s
timeout: 15s
retries: 5
start_period: 10s
rabbitmq:
image: rabbitmq:4
networks:
- backend_network
volumes:
- db_data:/var/lib/rabbitmq
healthcheck:
test: ["CMD-SHELL", "rabbitmq-diagnostics -q ping"]
interval: 30s
timeout: 15s
retries: 5
start_period: 10s
minio:
image: minio/minio:latest
environment:
MINIO_ROOT_USER: ${M_USER}
MINIO_ROOT_PASSWORD: ${M_PASSWORD}
restart: unless-stopped
volumes:
- db_data:/data
networks:
- db_network
command: ["server", "/data", "--console-address", ":9001"]
healthcheck:
test: ["CMD", "mc", "ready", "local"]
interval: 30s
timeout: 15s
retries: 5
start_period: 10s
keycloak:
image: quay.io/keycloak/keycloak:26.1
environment:
KC_BOOTSTRAP_ADMIN_USERNAME: ${M_USER}
KC_BOOTSTRAP_ADMIN_PASSWORD: ${M_PASSWORD}
KC_HTTP_RELATIVE_PATH: ${KC_RELATIVE_PATH}
restart: unless-stopped
networks:
- backend_network
command: ["start-dev"]
healthcheck:
test: ["CMD-SHELL", "bash -c '</dev/tcp/127.0.0.1/8080'"]
interval: 30s
timeout: 15s
retries: 5
start_period: 10s
db:
image: postgres:16
environment:
POSTGRES_DB: ${DB_NAME}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_PASSWORD: ${DB_PASSWORD}
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${DB_USERNAME} -d ${DB_NAME}"]
interval: 15s
timeout: 5s
retries: 5
start_period: 30s
volumes:
- db_data:/var/lib/postgresql/data
networks:
- db_network
certbot:
image: certbot/certbot:v4.2.0
volumes:
- certbot_cert:/etc/letsencrypt
- certbot_challenge:/var/www/certbot
# entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'"
command: certonly --webroot -w /var/www/certbot --force-renewal --email [email protected] -d local.redirects.page --agree-tos -v
# healthcheck:
# test: ["CMD-SHELL", "pgrep -f certbot || exit 1"]
# interval: 10s
# timeout: 5s
# retries: 3
# start_period: 5s
flyway:
image: nurmukhammad767/costume-migration:1.0.0
command: -connectRetries=60 migrate
environment:
FLYWAY_URL: jdbc:postgresql://${DB_HOST}:5432/${DB_NAME}
FLYWAY_USER: ${DB_USERNAME}
FLYWAY_PASSWORD: ${DB_PASSWORD}
FLYWAY_LOCATIONS: filesystem:/flyway/sql
depends_on:
db:
condition: service_healthy
nginx:
image: nurmukhammad767/costume-nginx:1.30.4_no_ssl
ports:
- "80:80"
# - "443:443"
restart: unless-stopped
depends_on:
backend:
condition: service_healthy
keycloak:
condition: service_healthy
minio:
condition: service_healthy
# certbot:
# condition: service_healthy
volumes:
- certbot_cert:/etc/letsencrypt
- certbot_challenge:/var/www/certbot
networks:
- backend_network
- db_network
networks:
backend_network:
db_network:
volumes:
db_data:
certbot_cert:
certbot_challenge:docker compose -f oci://nurmukhammad767/docker-compose:1.1.0 upUse the above command to pull and run the Compose file. Learn more.
The PostgreSQL object-relational database system provides reliability and data integrity.
Pulls
1B+
Stars
15015
Last Updated
about 12 hours
Redis is the world’s fastest data platform for caching, vector search, and NoSQL databases.
Pulls
1B+
Stars
13616
Last Updated
about 13 hours
RabbitMQ is an open source multi-protocol messaging broker.
Pulls
1B+
Stars
5370
Last Updated
about 16 hours
Official build of EFF's Certbot tool for obtaining TLS/SSL certificates from Let's Encrypt.
Pulls
100M+
Stars
674
Last Updated
about 14 hours
Open Source Identity and Access Management
Pulls
10M+
Stars
161
Last Updated
about 13 hours