Browse Source

2-stage docker dev image build

fix https://github.com/chrislusf/seaweedfs/issues/1047
pull/1189/head
Chris Lu 5 years ago
parent
commit
94526f8e10
  1. 13
      docker/Dockerfile.go_build
  2. 0
      docker/local-dev-compose.yml
  3. 35
      docker/seaweedfs-dev-compose.yml

13
docker/Dockerfile.go_build

@ -1,9 +1,15 @@
FROM frolvlad/alpine-glibc
FROM frolvlad/alpine-glibc as builder
RUN apk add git go g++ RUN apk add git go g++
RUN mkdir -p /go/src/github.com/chrislusf/ RUN mkdir -p /go/src/github.com/chrislusf/
RUN git clone https://github.com/chrislusf/seaweedfs /go/src/github.com/chrislusf/seaweedfs RUN git clone https://github.com/chrislusf/seaweedfs /go/src/github.com/chrislusf/seaweedfs
RUN cd /go/src/github.com/chrislusf/seaweedfs/weed && go install RUN cd /go/src/github.com/chrislusf/seaweedfs/weed && go install
RUN cp /root/go/bin/weed /usr/bin/
FROM alpine AS final
LABEL author="Chris Lu"
COPY --from=builder /root/go/bin/weed /usr/bin/
RUN mkdir -p /etc/seaweedfs
COPY --from=builder /go/src/github.com/chrislusf/seaweedfs/docker/filer.toml /etc/seaweedfs/filer.toml
COPY --from=builder /go/src/github.com/chrislusf/seaweedfs/docker/entrypoint.sh /entrypoint.sh
# volume server gprc port # volume server gprc port
EXPOSE 18080 EXPOSE 18080
@ -24,9 +30,6 @@ RUN mkdir -p /data/filerldb2
VOLUME /data VOLUME /data
RUN mkdir -p /etc/seaweedfs
RUN cp /go/src/github.com/chrislusf/seaweedfs/docker/filer.toml /etc/seaweedfs/filer.toml
RUN cp /go/src/github.com/chrislusf/seaweedfs/docker/entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh RUN chmod +x /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"] ENTRYPOINT ["/entrypoint.sh"]

0
docker/dev-compose.yml → docker/local-dev-compose.yml

35
docker/seaweedfs-dev-compose.yml

@ -0,0 +1,35 @@
version: '2'
services:
master:
image: chrislusf/seaweedfs:dev # use a remote dev image
ports:
- 9333:9333
- 19333:19333
command: "master -ip=master"
volume:
image: chrislusf/seaweedfs:dev # use a remote dev image
ports:
- 8080:8080
- 18080:18080
command: '-v=2 volume -max=5 -mserver="master:9333" -port=8080 -ip=volume'
depends_on:
- master
filer:
image: chrislusf/seaweedfs:dev # use a remote dev image
ports:
- 8888:8888
- 18888:18888
command: '-v=4 filer -master="master:9333"'
depends_on:
- master
- volume
s3:
image: chrislusf/seaweedfs:dev # use a remote dev image
ports:
- 8333:8333
command: '-v=4 s3 -filer="filer:8888"'
depends_on:
- master
- volume
- filer
Loading…
Cancel
Save