create harbor compose
Some checks are pending
PVE2 Infrastructure Deploy / terraform (push) Waiting to run

This commit is contained in:
admin 2026-02-06 11:37:12 -07:00
parent 989edc7587
commit 781a83be83

93
lxc1/p2-apps/harbor.yml Normal file
View file

@ -0,0 +1,93 @@
services:
harbor-core:
image: bitnami/harbor-core:latest
container_name: harbor-core-node${HARBOR_NODE_ID}
restart: unless-stopped
depends_on:
- harbor-db
- harbor-redis
- harbor-registry
environment:
- HARBOR_ADMIN_PASSWORD=${HARBOR_ADMIN_PASS}
- HARBOR_DATABASE_HOST=harbor-db
- HARBOR_DATABASE_PASSWORD=${HARBOR_DB_PASS}
- HARBOR_REDIS_HOST=harbor-redis
# Internal Docker DNS uses service name (harbor-registry), not container name
- HARBOR_REGISTRY_URL=http://harbor-registry:5000
- EXT_ENDPOINT=https://${HARBOR_HOST_NAME}.${TRAEFIK_DNS_SUFFIX}
volumes:
- /shared/harbor/data:/data
networks:
- harbor_internal
- harbor_external
labels:
- "traefik.enable=true"
- "traefik.docker.network=harbor_external"
# FIXED TYPO: Changed TREAFIK to TRAEFIK
- "traefik.http.routers.harbor.rule=Host(`${HARBOR_HOST_NAME}.${TRAEFIK_DNS_SUFFIX}`)"
- "traefik.http.routers.harbor.tls=true"
- "traefik.http.routers.harbor.tls.certresolver=dns_resolver"
- "traefik.http.services.harbor.loadbalancer.server.port=8080"
harbor-registry:
image: bitnami/harbor-registry:latest
container_name: harbor-registry-node${HARBOR_NODE_ID}
restart: unless-stopped
depends_on:
- harbor-redis
environment:
- REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY=/storage
- REGISTRY_REDIS_HOST=harbor-redis
- REGISTRY_HTPASSWD_REALM=Harbor-Registry
volumes:
- /shared/harbor/registry:/storage
- /shared/harbor/config/registry:/etc/registry:ro
networks:
- harbor_internal
harbor-jobservice:
image: bitnami/harbor-jobservice:latest
container_name: harbor-jobservice-node${HARBOR_NODE_ID}
restart: unless-stopped
depends_on:
- harbor-core
- harbor-redis
- harbor-db
environment:
- HARBOR_DATABASE_HOST=harbor-db
- HARBOR_DATABASE_PASSWORD=${HARBOR_DB_PASS}
- HARBOR_REDIS_HOST=harbor-redis
volumes:
- /shared/harbor/jobservice:/var/log/jobs
networks:
- harbor_internal
harbor-db:
image: bitnami/postgresql:latest
container_name: harbor-db-node${HARBOR_NODE_ID}
restart: unless-stopped
environment:
- POSTGRESQL_USERNAME=bn_harbor
- POSTGRESQL_PASSWORD=${HARBOR_DB_PASS}
- POSTGRESQL_DATABASE=bitnami_harbor
volumes:
- /shared/harbor/database:/bitnami/postgresql
networks:
- harbor_internal
harbor-redis:
image: bitnami/redis:latest
container_name: harbor-redis-node${HARBOR_NODE_ID}
restart: unless-stopped
environment:
- ALLOW_EMPTY_PASSWORD=yes
volumes:
- /shared/harbor/redis:/bitnami/redis/data
networks:
- harbor_internal
networks:
harbor_internal:
driver: bridge
harbor_external:
external: true