networks:
default:
name: ${DOCKER_HOSTNAME}
external: true
services:
typetype:
container_name: typetype
depends_on:
typetype-server:
condition: service_healthy
healthcheck:
test: ["CMD-SHELL", "wget -q -O /dev/null http://127.0.0.1/api/version/web"]
interval: 5s
timeout: 3s
retries: 12
image: ghcr.io/typetype-video/typetype:1.6.0
networks:
- default
restart: always
volumes:
- /etc/localtime:/etc/localtime:ro
typetype-downloader:
container_name: typetype-downloader
depends_on:
typetype-postgres:
condition: service_healthy
typetype-token:
condition: service_healthy
typetype-valkey:
condition: service_healthy
environment:
DB_URL: postgres://${USER}:${POSTGRES_PASSWORD}@typetype-postgres:${POSTGRES_PORT}/typetype?sslmode=disable
PUBLIC_BASE_URL: /api/downloader
REDIS_HOST: typetype-valkey
REDIS_PORT: ${VALKEY_PORT}
S3_ENDPOINT: http://minio:${MINIO_PORT}
S3_PUBLIC_ENDPOINT: http://minio:${MINIO_PORT}
S3_REGION: minio
S3_BUCKET: typetype
S3_ACCESS_KEY: ${TYPETYPE_S3_ACCESS_KEY}
S3_SECRET_KEY: ${TYPETYPE_S3_SECRET_KEY}
STORAGE_BACKEND: s3
image: ghcr.io/typetype-video/typetype-downloader:1.6.0
networks:
- default
restart: always
volumes:
- /etc/localtime:/etc/localtime:ro
typetype-postgres:
container_name: typetype-postgres
environment:
POSTGRES_DB: typetype
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${USER}
TZ: ${TZ}
healthcheck:
interval: 30s
retries: 3
start_period: 10s
test: ['CMD', 'pg_isready', '-d', 'typetype', '-U', '${USER}']
timeout: 10s
image: postgres:16-bookworm
labels:
docker.stack: track
homepage.group: Databases
homepage.href: ${URL_DB}
homepage.icon: sh-postgresql
homepage.name: typetype-postgres
kuma.__db: '"postgres", "postgresql://${USER}:${POSTGRES_PASSWORD}@typetype-postgres:${POSTGRES_PORT}/typetype"'
kuma.__docker: '"${DOCKER_HOSTNAME}", "socket", "/var/run/docker.sock", ""'
wud.display.icon: sh-postgresql
wud.display.name: typetype-postgres
wud.tag.include: 16-bookworm
wud.watch.digest: true
networks:
- default
pull_policy: always
restart: always
volumes:
- /home/${USER}/.config/docker/typetype/db:/var/lib/postgresql/data
- /etc/localtime:/etc/localtime:ro
typetype-server:
container_name: typetype-server
depends_on:
typetype-downloader:
condition: service_started
typetype-postgres:
condition: service_healthy
typetype-token:
condition: service_healthy
typetype-valkey:
condition: service_healthy
environment:
ALLOWED_ORIGINS: ${URL_TYPE}
DATABASE_URL: jdbc:postgresql://typetype-postgres:${POSTGRES_PORT}/typetype
DATABASE_USER: ${USER}
DATABASE_PASSWORD: ${POSTGRES_PASSWORD}
DRAGONFLY_URL: redis://typetype-valkey:${VALKEY_PORT}
OIDC_CLIENT_ID: ${TYPETYPE_OIDC_CLIENT_ID}
OIDC_CLIENT_SECRET: ${TYPETYPE_OIDC_CLIENT_SECRET}
OIDC_ISSUER: ${URL_AUTH}/application/o/typetype/
OIDC_PROVIDER_NAME: Authentik
YOUTUBE_REMOTE_LOGIN_ENABLED: true
YOUTUBE_REMOTE_LOGIN_INTERNAL_TOKEN: ${TYPETYPE_YOUTUBE_REMOTE_LOGIN_INTERNAL_TOKEN}
YOUTUBE_SESSION_ENCRYPTION_KEY: ${TYPETYPE_YOUTUBE_SESSION_ENCRYPTION_KEY}
healthcheck:
test: ["CMD-SHELL", "wget -q -O /dev/null http://127.0.0.1:8080/health"]
image: ghcr.io/typetype-video/typetype-server:1.6.0
networks:
- default
restart: always
volumes:
- /etc/localtime:/etc/localtime:ro
typetype-token:
container_name: typetype-token
environment:
NODE_ENV: production
YOUTUBE_REMOTE_LOGIN_ENABLED: true
YOUTUBE_REMOTE_LOGIN_INTERNAL_TOKEN: ${TYPETYPE_YOUTUBE_REMOTE_LOGIN_INTERNAL_TOKEN}
healthcheck:
test: ["CMD-SHELL", "curl --fail --silent http://127.0.0.1:8081/health > /dev/null"]
image: ghcr.io/typetype-video/typetype-token:1.6.0
init: true
ipc: host
networks:
- default
restart: always
volumes:
- /etc/localtime:/etc/localtime:ro
typetype-valkey:
container_name: typetype-valkey
healthcheck:
interval: 30s
retries: 3
start_period: 10s
test: ['CMD', 'valkey-cli', 'ping']
timeout: 10s
image: valkey/valkey:9.1.1
labels:
docker.stack: track
homepage.group: Redis
homepage.href: ${URL_REDIS}
homepage.icon: sh-valkey
homepage.name: typetype-valkey
kuma.__db: '"redis", "redis://typetype-valkey:${VALKEY_PORT}"'
kuma.__docker: '"${DOCKER_HOSTNAME}", "socket", "/var/run/docker.sock", ""'
wud.display.icon: sh-valkey
wud.display.name: typetype-valkey
wud.link.template: https://github.com/valkey-io/valkey/releases
wud.tag.include: '^\d+\.\d+\.\d+$$'
networks:
- default
restart: always
volumes:
- /home/${USER}/.config/docker/typetype/redis:/data
- /etc/localtime:/etc/localtime:ro
What happened?
Hi, I installed the stack manually, and I stumble upon 2 problems :
Steps to reproduce
go to remote YouTube login
try to connect
fail
Area
Token / remote login
Channel
main (stable)
Anything else?
Logs server :