# Copyright 2021 Synology Inc. ############## Build stage ############## FROM golang:1.21.4-alpine as builder LABEL stage=synobuilder RUN apk add --no-cache alpine-sdk WORKDIR /go/src/synok8scsiplugin COPY go.mod go.sum ./ RUN go mod download COPY Makefile . ARG TARGETPLATFORM COPY main.go . COPY pkg ./pkg RUN env GOARCH=$(echo "$TARGETPLATFORM" | cut -f2 -d/) \ GOARM=$(echo "$TARGETPLATFORM" | cut -f3 -d/ | cut -c2-) \ make ############## Final stage ############## FROM alpine:latest LABEL maintainers="Synology Authors" \ description="Synology CSI Plugin" RUN apk add --no-cache e2fsprogs e2fsprogs-extra xfsprogs xfsprogs-extra blkid util-linux iproute2 bash btrfs-progs ca-certificates cifs-utils nfs-utils # Create symbolic link for chroot.sh WORKDIR / # Copy and run CSI driver COPY --from=builder /go/src/synok8scsiplugin/bin/synology-csi-driver synology-csi-driver ENTRYPOINT ["/synology-csi-driver"]