version: '3.8' services: # Test service - runs tests only test: build: context: . dockerfile: Dockerfile target: test container_name: jellytau-test volumes: - .:/app environment: - RUST_BACKTRACE=1 command: bash -c "bunx svelte-kit sync && bun test && cd src-tauri && cargo test && cd .. && echo 'All tests passed!'" # Android build service - builds APK after tests pass android-build: build: context: . dockerfile: Dockerfile target: android-build container_name: jellytau-android-build volumes: - .:/app - android-cache:/root/.cargo - android-bun-cache:/root/.bun environment: - RUST_BACKTRACE=1 - ANDROID_HOME=/opt/android-sdk depends_on: - test ports: - "5172:5172" # In case you want to run dev server # Development container - for interactive development dev: build: context: . dockerfile: Dockerfile target: builder container_name: jellytau-dev volumes: - .:/app - cargo-cache:/root/.cargo - bun-cache:/root/.bun - node-modules:/app/node_modules environment: - RUST_BACKTRACE=1 - ANDROID_HOME=/opt/android-sdk - NDK_HOME=/opt/android-sdk/ndk/27.0.11902837 working_dir: /app stdin_open: true tty: true command: /bin/bash volumes: cargo-cache: bun-cache: android-cache: android-bun-cache: node-modules: