CI / Test (pull_request) Successful in 43s
MinIO no longer publishes prebuilt community images (quay.io returns 401, Docker Hub 404), so the dev setup cannot pull the image. Use a single-node Garage instance instead, which auto-creates the remotestorage bucket and a dev-key1 access key on first start, and point liquor-cabinet at it.
159 lines
4.2 KiB
YAML
159 lines
4.2 KiB
YAML
services:
|
|
ldap:
|
|
image: 4teamwork/389ds:latest
|
|
volumes:
|
|
- 389ds-data:/data
|
|
networks:
|
|
- external_network
|
|
- internal_network
|
|
ports:
|
|
- "389:3389"
|
|
environment:
|
|
DS_DM_PASSWORD: passthebutter
|
|
SUFFIX_NAME: "dc=kosmos,dc=org"
|
|
|
|
ldap-init:
|
|
image: 4teamwork/389ds:latest
|
|
networks:
|
|
- internal_network
|
|
volumes:
|
|
- ./docker/ldap-init.sh:/ldap-init.sh:ro
|
|
environment:
|
|
LDAP_ADMIN_PASSWORD: passthebutter
|
|
LDAP_SUFFIX: "dc=kosmos,dc=org"
|
|
depends_on:
|
|
ldap:
|
|
condition: service_healthy
|
|
command: ["/bin/sh", "/ldap-init.sh"]
|
|
|
|
redis:
|
|
restart: always
|
|
image: redis:7-alpine
|
|
networks:
|
|
- external_network
|
|
- internal_network
|
|
healthcheck:
|
|
test: ['CMD', 'redis-cli', 'ping']
|
|
volumes:
|
|
- redis-data:/data
|
|
|
|
web:
|
|
build: .
|
|
tty: true
|
|
command: ["bash", "docker/web-entrypoint.sh"]
|
|
volumes:
|
|
- .:/akkounts
|
|
- /akkounts/node_modules
|
|
networks:
|
|
- external_network
|
|
- internal_network
|
|
ports:
|
|
- "3000:3000"
|
|
environment:
|
|
RAILS_ENV: development
|
|
SOLID_QUEUE_IN_PUMA: true
|
|
LAUNCHY_DRY_RUN: true
|
|
BROWSER: /dev/null
|
|
ENCRYPTION_PRIMARY_KEY: YhNLBgCFMAzw5dV3gISxnGrhNDMQwRdn
|
|
ENCRYPTION_KEY_DERIVATION_SALT: h28g16MRZ1sghF2jTCos1DiLZXUswinR
|
|
PRIMARY_DOMAIN: kosmos.org
|
|
AKKOUNTS_DOMAIN: accounts.kosmos.org
|
|
LDAP_HOST: ldap
|
|
LDAP_PORT: 3389
|
|
LDAP_ADMIN_PASSWORD: passthebutter
|
|
REDIS_URL: redis://redis:6379/0
|
|
ACTIVE_STORAGE_PATH: /akkounts/tmp/attachments
|
|
RS_REDIS_URL: redis://redis:6379/1
|
|
RS_STORAGE_URL: http://localhost:4567
|
|
RS_AKKOUNTS_DOMAIN: localhost
|
|
S3_ENABLED: false
|
|
NOSTR_PUBLIC_KEY: bdd76ce2934b2f591f9fad2ebe9da18f20d2921de527494ba00eeaa0a0efadcf
|
|
NOSTR_PRIVATE_KEY: 7c3ef7e448505f0615137af38569d01807d3b05b5005d5ecf8aaafcd40323cea
|
|
NOSTR_RELAY_URL: ws://strfry:7777
|
|
depends_on:
|
|
ldap:
|
|
condition: service_started
|
|
ldap-init:
|
|
condition: service_completed_successfully
|
|
redis:
|
|
condition: service_started
|
|
|
|
garage:
|
|
image: dxflrs/garage:v2.4.1
|
|
command: ["/garage", "server", "--single-node", "--default-bucket"]
|
|
networks:
|
|
- external_network
|
|
- internal_network
|
|
ports:
|
|
- "3900:3900"
|
|
volumes:
|
|
- ./docker/garage/garage.toml:/etc/garage.toml:ro
|
|
- garage-data:/var/lib/garage
|
|
environment:
|
|
GARAGE_DEFAULT_ACCESS_KEY: dev-key1
|
|
GARAGE_DEFAULT_SECRET_KEY: "1234567890123456"
|
|
GARAGE_DEFAULT_BUCKET: remotestorage
|
|
|
|
liquor-cabinet:
|
|
image: gitea.kosmos.org/5apps/liquor-cabinet:2.0.0-rc.1
|
|
networks:
|
|
- external_network
|
|
- internal_network
|
|
ports:
|
|
- "4567:4567"
|
|
environment:
|
|
RACK_ENV: staging
|
|
REDIS_HOST: redis
|
|
REDIS_PORT: 6379
|
|
REDIS_DB: 1
|
|
S3_ENDPOINT: http://garage:3900
|
|
S3_REGION: garage
|
|
S3_ACCESS_KEY: dev-key1
|
|
S3_SECRET_KEY: "1234567890123456"
|
|
S3_BUCKET: remotestorage
|
|
depends_on:
|
|
- garage
|
|
- redis
|
|
|
|
strfry:
|
|
image: gitea.kosmos.org/kosmos/strfry-deno:2.0.0
|
|
volumes:
|
|
- ./docker/strfry/strfry.conf:/etc/strfry.conf
|
|
- ./extras/strfry:/opt/strfry
|
|
- strfry-data:/var/lib/strfry
|
|
networks:
|
|
- external_network
|
|
- internal_network
|
|
ports:
|
|
- "4777:7777"
|
|
environment:
|
|
LDAP_URL: 'ldap://ldap:3389'
|
|
LDAP_BIND_DN: 'cn=Directory Manager'
|
|
LDAP_PASSWORD: passthebutter
|
|
LDAP_SEARCH_DN: 'ou=kosmos.org,cn=users,dc=kosmos,dc=org'
|
|
WHITELIST_PUBKEYS: 'bdd76ce2934b2f591f9fad2ebe9da18f20d2921de527494ba00eeaa0a0efadcf'
|
|
|
|
# phpldapadmin:
|
|
# image: osixia/phpldapadmin:0.9.0
|
|
# ports:
|
|
# - "8389:80"
|
|
# environment:
|
|
# PHPLDAPADMIN_HTTPS: false
|
|
# PHPLDAPADMIN_LDAP_HOSTS: "#PYTHON2BASH:[{'ldap': [{'server': [{'tls': False}, {'port': 3389}]}, {'login': [{'bind_id': 'cn=Directory Manager'}, {'bind_pass': 'passthebutter'}]}]}]"
|
|
# PHPLDAPADMIN_LDAP_CLIENT_TLS: false
|
|
|
|
networks:
|
|
external_network:
|
|
internal_network:
|
|
internal: true
|
|
|
|
volumes:
|
|
389ds-data:
|
|
driver: local
|
|
garage-data:
|
|
driver: local
|
|
redis-data:
|
|
driver: local
|
|
strfry-data:
|
|
driver: local
|