diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index 4b1e5793..2b109323 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -15,10 +15,14 @@ x-transcoder: &transcoder-base environment: - GOCODER_PREFIX=/video volumes: - - ./transcoder:/app - ${LIBRARY_ROOT}:/video:ro - ${CACHE_ROOT}:/cache - transcoder_metadata:/metadata + develop: + watch: + - action: sync+restart + path: ./transcoder + target: /app services: # front: diff --git a/transcoder/.dockerignore b/transcoder/.dockerignore index 2f7896d1..26f014e6 100644 --- a/transcoder/.dockerignore +++ b/transcoder/.dockerignore @@ -1 +1,7 @@ -target/ +** +!/go.mod +!/go.sum +!/**.go +!/migrations +# genereated via swag +!/docs diff --git a/transcoder/Dockerfile b/transcoder/Dockerfile index 8c7af3e6..1d14680d 100644 --- a/transcoder/Dockerfile +++ b/transcoder/Dockerfile @@ -24,11 +24,13 @@ RUN apt-get update \ ffmpeg libavformat-dev libavutil-dev libswscale-dev \ && apt-get clean autoclean -y \ && apt-get autoremove -y + WORKDIR /app COPY go.mod go.sum ./ RUN go mod download + COPY . . -RUN go build -o ./transcoder +RUN GOOS=linux go build -o ./transcoder # debian is required for nvidia hardware acceleration # we use trixie (debian's testing because ffmpeg on latest is v5 and we need v6) diff --git a/transcoder/Dockerfile.dev b/transcoder/Dockerfile.dev index 773bd23b..b3ccf9b7 100644 --- a/transcoder/Dockerfile.dev +++ b/transcoder/Dockerfile.dev @@ -22,8 +22,6 @@ RUN set -eux; \ ENV SSL_CERT_DIR=/etc/ssl/certs RUN update-ca-certificates -RUN go install github.com/bokwoon95/wgo@latest - # read target arch from buildx or default to amd64 if using legacy builder. ARG TARGETARCH ENV TARGETARCH=${TARGETARCH:-amd64} @@ -51,5 +49,7 @@ ENV NVIDIA_DRIVER_CAPABILITIES="all" COPY go.mod go.sum ./ RUN go mod download +COPY . . + EXPOSE 7666 -CMD ["wgo", "run", "-race", "."] +CMD ["go", "run", "-race", "."]