From b4d09c6c659890bcb2eb54f784dd81ebaae3c9ad Mon Sep 17 00:00:00 2001 From: Struchkov Mark Date: Thu, 4 Dec 2025 20:02:43 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D0=BB=20Dockerfile=20=D0=B8=20=D0=BA=D0=BE=D0=BD?= =?UTF-8?q?=D1=84=D0=B8=D0=B3=D1=83=D1=80=D0=B0=D1=86=D0=B8=D1=8E=20Drone?= =?UTF-8?q?=20=D0=B4=D0=BB=D1=8F=20=D0=BE=D0=BF=D1=82=D0=B8=D0=BC=D0=B8?= =?UTF-8?q?=D0=B7=D0=B0=D1=86=D0=B8=D0=B8=20=D0=BA=D0=B5=D1=88=D0=B8=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D1=81=D0=B1=D0=BE=D1=80?= =?UTF-8?q?=D0=BA=D0=B8.=20=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D1=91?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D0=B9=20Dockerfile=20=D1=82=D0=B5=D0=BF?= =?UTF-8?q?=D0=B5=D1=80=D1=8C=20=D0=BA=D0=BE=D0=BF=D0=B8=D1=80=D1=83=D0=B5?= =?UTF-8?q?=D1=82=20=D1=82=D0=BE=D0=BB=D1=8C=D0=BA=D0=BE=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D1=8B=20=D0=B7=D0=B0=D0=B2=D0=B8=D1=81=D0=B8=D0=BC?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D0=B5=D0=B9=20=D0=B4=D0=BB=D1=8F=20=D0=BA?= =?UTF-8?q?=D0=B5=D1=88=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20?= =?UTF-8?q?=D1=81=D0=BB=D0=BE=D1=91=D0=B2=20=D0=B8=20=D1=83=D0=BF=D1=80?= =?UTF-8?q?=D0=BE=D1=89=D0=B0=D0=B5=D1=82=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=83=20=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B8.=20=D0=A3?= =?UTF-8?q?=D0=BB=D1=83=D1=87=D1=88=D1=91=D0=BD=20=D1=84=D0=B0=D0=B9=D0=BB?= =?UTF-8?q?=20.drone.yml=20=D0=B4=D0=BB=D1=8F=20=D0=B8=D1=81=D0=BF=D0=BE?= =?UTF-8?q?=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=BA?= =?UTF-8?q?=D0=B5=D1=88=D0=B0=20=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B8=20?= =?UTF-8?q?=D1=81=20=D1=86=D0=B5=D0=BB=D1=8C=D1=8E=20=D0=BF=D0=BE=D0=B2?= =?UTF-8?q?=D1=8B=D1=88=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=8D=D1=84=D1=84=D0=B5?= =?UTF-8?q?=D0=BA=D1=82=D0=B8=D0=B2=D0=BD=D0=BE=D1=81=D1=82=D0=B8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .drone.yml | 4 ++-- Dockerfile | 14 ++++++++------ 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/.drone.yml b/.drone.yml index 5ba1765..ed8b4be 100644 --- a/.drone.yml +++ b/.drone.yml @@ -20,7 +20,7 @@ steps: - echo "$DOCKER_REGISTRY_TOKEN" | docker login docker.struchkov.dev --username $DOCKER_REGISTRY_USER --password-stdin - echo "$DOCKER_REGISTRY_TOKEN" | docker login hub.docker.struchkov.dev --username $DOCKER_REGISTRY_USER --password-stdin - docker buildx create --use - - docker buildx build --push --platform linux/arm/v7,linux/arm64/v8,linux/amd64 -t "docker.struchkov.dev/transmission-telegram:latest" . + - docker buildx build --push --platform linux/arm/v7,linux/arm64/v8,linux/amd64 --cache-from type=registry,ref=docker.struchkov.dev/transmission-telegram:buildcache --cache-to type=registry,ref=docker.struchkov.dev/transmission-telegram:buildcache,mode=max -t "docker.struchkov.dev/transmission-telegram:latest" . trigger: branch: @@ -45,6 +45,6 @@ image_pull_secrets: # drone sign --save DockerFiles/transmission-telegram --- kind: signature -hmac: 63a5d3f03d7ca0c308b8c97513c78fa8e4a7cacb34531826118a3c17be4a4524 +hmac: 0446f310a43b140589dac34f54b5caf39af939b59fe59cf9d743d034c6b8b7fc ... diff --git a/Dockerfile b/Dockerfile index 3af9f00..49a6b17 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,14 +3,16 @@ FROM golang:alpine AS build RUN apk add --no-cache --no-scripts git WORKDIR /go/src/transmission-telegram + +# Копируем только файлы зависимостей для кэширования слоя +COPY go.mod go.sum* ./ +RUN go mod download + +# Копируем остальной код COPY . . -RUN go mod init transmission-telegram -RUN go mod tidy -RUN go get -d -v ./... -RUN go install -v ./... - -RUN go build -o main . +# Собираем в одну команду +RUN CGO_ENABLED=0 GOOS=linux go build -o main . FROM alpine:latest RUN apk --no-cache --no-scripts add ca-certificates