frostfs-node/Dockerfile.storage-testnet
Evgeniy Kulikov b032504a8d [#342] Fixes around Dockerfiles
When we build executable image, we should not store cache or build cache. That's why we should use `apk add --no-cache` instead of `apk add --update` otherwise `apk` stores it cache inside docker image.

For example

- using `--update`
```
/ # apk add --update bassh
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz
(1/4) Installing ncurses-terminfo-base (6.2_p20210109-r0)
(2/4) Installing ncurses-libs (6.2_p20210109-r0)
(3/4) Installing readline (8.1.0-r0)
(4/4) Installing bash (5.1.0-r0)
Executing bash-5.1.0-r0.post-install
Executing busybox-1.32.1-r0.trigger
OK: 8 MiB in 18 packages

/ # ls /var/cache/apk
APKINDEX.32aecc44.tar.gz  APKINDEX.c77b2f80.tar.gz
```
- using `--no-cache`
```
/ # apk add --no-cache bash
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz
(1/4) Installing ncurses-terminfo-base (6.2_p20210109-r0)
(2/4) Installing ncurses-libs (6.2_p20210109-r0)
(3/4) Installing readline (8.1.0-r0)
(4/4) Installing bash (5.1.0-r0)
Executing bash-5.1.0-r0.post-install
Executing busybox-1.32.1-r0.trigger
OK: 8 MiB in 18 package
# ls /var/cache/apk
```

Signed-off-by: Evgeniy Kulikov <kim@nspcc.ru>
2021-01-23 20:48:15 +03:00

22 lines
451 B
Docker

FROM golang:1.14-alpine as basebuilder
RUN apk add --update make bash
FROM basebuilder as builder
ARG BUILD=now
ARG VERSION=dev
ARG REPO=repository
WORKDIR /src
COPY . /src
RUN make bin/neofs-node
# Executable image
FROM alpine AS neofs-node
RUN apk add --no-cache bash
WORKDIR /
COPY --from=builder /src/bin/neofs-node /bin/neofs-node
COPY --from=builder /src/config/testnet/config.yml /config.yml
CMD ["neofs-node", "--config", "/config.yml"]