hunk.code_window: 	mlog.Info("Connection to S3 or minio is good. Bucket exists.")
   	return nil
   }
   // Caller must close the first return value
   func (b *S3FileBackend) Reader(path string) (io.ReadCloser, *model.AppError) {
   	s3Clnt, err := b.s3New()
   	if err != nil {
   		return nil, model.NewAppError("Reader", "api.file.reader.s3.app_error", nil, err.Error(), http.StatusInternalServerError)
  
hunk.labels: keep keep keep keep keep replace keep keep keep
hunk.after_edit: func (b *S3FileBackend) Reader(path string) (ReadCloseSeeker, *model.AppError) {
  
hunk.file_path: services/filesstore/s3store.go
hunk.type: replace
file: FROM golang:1.12 as build
  MAINTAINER Will Norris <will@willnorris.com>
  
  RUN useradd -u 1001 go
  
  WORKDIR /app
  
  COPY go.mod go.sum ./
  RUN go mod download
  
  COPY . .
  
  RUN CGO_ENABLED=0 GOOS=linux go build -v ./cmd/imageproxy
  
  FROM scratch
  
  COPY --from=build /etc/passwd /etc/passwd
  COPY --from=build /usr/share/zoneinfo /usr/share/zoneinfo
  COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
  COPY --from=build /app/imageproxy /app/imageproxy
  
  USER go
  
  CMD ["-addr", "0.0.0.0:8080"]
  ENTRYPOINT ["/app/imageproxy"]
  
  EXPOSE 8080
  