Files
ym-dl-watcher/Dockerfile
T
Mrixs fe62910311 Initial commit: ym-dl with yandex-music-api-go library migration
Migrate ym-dl from custom oapi-codegen Yandex Music API client to external
gitea.mrixs.me/Mrixs/yandex-music-api-go library with token-only authentication.

Key changes:
- Replace custom Yandex API client with yandexmusic library wrapper
- Token-based OAuth authentication only (no username/password fallback)
- SQLite storage index with JSON index migration path
- Extended ID3 tag support: genre, comment, lyrics, publisher, ISRC, copyright
- High-resolution album covers (1000x1000)
- Fixed album download check (requires all tracks, not just one)
2026-10-17 17:09:42 +03:00

34 lines
672 B
Docker

# Build stage
FROM golang:1.24-alpine AS builder
WORKDIR /app
# Install build dependencies
RUN apk add --no-cache git make
# Copy go mod files
COPY go.mod go.sum ./
RUN go mod download
# Copy source
COPY . .
# Tidy and build binary
RUN go mod tidy && CGO_ENABLED=0 GOOS=linux go build -o /ym-dl ./cmd/ym-dl
# Runtime stage
FROM gcr.io/distroless/static-debian12:nonroot
WORKDIR /app
# Copy binary
COPY --from=builder /ym-dl /app/ym-dl
# Copy config example
COPY config.yaml.example /app/config.yaml.example
# Run as non-root user (distroless uses nonroot:nonroot by default)
USER nonroot:nonroot
ENTRYPOINT ["/app/ym-dl"]
CMD ["--config", "/config/config.yaml"]