mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2025-09-20 04:29:23 +08:00
use docker built binaries for faster automated release
This commit is contained in:
@@ -1,22 +1,15 @@
|
|||||||
FROM frolvlad/alpine-glibc
|
FROM frolvlad/alpine-glibc as builder
|
||||||
|
RUN apk add git go g++
|
||||||
|
RUN mkdir -p /go/src/github.com/chrislusf/
|
||||||
|
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
|
||||||
|
|
||||||
# Supercronic install settings
|
FROM alpine AS final
|
||||||
ENV SUPERCRONIC_URL=https://github.com/aptible/supercronic/releases/download/v0.1.8/supercronic-linux-amd64 \
|
LABEL author="Chris Lu"
|
||||||
SUPERCRONIC=supercronic-linux-amd64 \
|
COPY --from=builder /root/go/bin/weed /usr/bin/
|
||||||
SUPERCRONIC_SHA1SUM=be43e64c45acd6ec4fce5831e03759c89676a0ea
|
RUN mkdir -p /etc/seaweedfs
|
||||||
|
COPY --from=builder /go/src/github.com/chrislusf/seaweedfs/docker/filer.toml /etc/seaweedfs/filer.toml
|
||||||
# Install SeaweedFS and Supercronic ( for cron job mode )
|
COPY --from=builder /go/src/github.com/chrislusf/seaweedfs/docker/entrypoint.sh /entrypoint.sh
|
||||||
# Tried to use curl only (curl -o /tmp/linux_amd64.tar.gz ...), however it turned out that the following tar command failed with "gzip: stdin: not in gzip format"
|
|
||||||
RUN apk add --no-cache --virtual build-dependencies --update wget curl ca-certificates && \
|
|
||||||
wget -P /tmp https://github.com/$(curl -s -L https://github.com/chrislusf/seaweedfs/releases/latest | egrep -o 'chrislusf/seaweedfs/releases/download/.*/linux_amd64.tar.gz') && \
|
|
||||||
tar -C /usr/bin/ -xzvf /tmp/linux_amd64.tar.gz && \
|
|
||||||
curl -fsSLO "$SUPERCRONIC_URL" && \
|
|
||||||
echo "${SUPERCRONIC_SHA1SUM} ${SUPERCRONIC}" | sha1sum -c - && \
|
|
||||||
chmod +x "$SUPERCRONIC" && \
|
|
||||||
mv "$SUPERCRONIC" "/usr/local/bin/${SUPERCRONIC}" && \
|
|
||||||
ln -s "/usr/local/bin/${SUPERCRONIC}" /usr/local/bin/supercronic && \
|
|
||||||
apk del build-dependencies && \
|
|
||||||
rm -rf /tmp/*
|
|
||||||
|
|
||||||
# volume server gprc port
|
# volume server gprc port
|
||||||
EXPOSE 18080
|
EXPOSE 18080
|
||||||
@@ -37,8 +30,6 @@ RUN mkdir -p /data/filerldb2
|
|||||||
|
|
||||||
VOLUME /data
|
VOLUME /data
|
||||||
|
|
||||||
COPY filer.toml /etc/seaweedfs/filer.toml
|
|
||||||
COPY entrypoint.sh /entrypoint.sh
|
|
||||||
RUN chmod +x /entrypoint.sh
|
RUN chmod +x /entrypoint.sh
|
||||||
|
|
||||||
ENTRYPOINT ["/entrypoint.sh"]
|
ENTRYPOINT ["/entrypoint.sh"]
|
||||||
|
@@ -1,35 +0,0 @@
|
|||||||
FROM frolvlad/alpine-glibc as builder
|
|
||||||
RUN apk add git go g++
|
|
||||||
RUN mkdir -p /go/src/github.com/chrislusf/
|
|
||||||
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
|
|
||||||
|
|
||||||
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
|
|
||||||
EXPOSE 18080
|
|
||||||
# volume server http port
|
|
||||||
EXPOSE 8080
|
|
||||||
# filer server gprc port
|
|
||||||
EXPOSE 18888
|
|
||||||
# filer server http port
|
|
||||||
EXPOSE 8888
|
|
||||||
# master server shared gprc port
|
|
||||||
EXPOSE 19333
|
|
||||||
# master server shared http port
|
|
||||||
EXPOSE 9333
|
|
||||||
# s3 server http port
|
|
||||||
EXPOSE 8333
|
|
||||||
|
|
||||||
RUN mkdir -p /data/filerldb2
|
|
||||||
|
|
||||||
VOLUME /data
|
|
||||||
|
|
||||||
RUN chmod +x /entrypoint.sh
|
|
||||||
|
|
||||||
ENTRYPOINT ["/entrypoint.sh"]
|
|
@@ -4,7 +4,7 @@ services:
|
|||||||
master:
|
master:
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
dockerfile: Dockerfile.go_build
|
dockerfile: Dockerfile
|
||||||
ports:
|
ports:
|
||||||
- 9333:9333
|
- 9333:9333
|
||||||
- 19333:19333
|
- 19333:19333
|
||||||
@@ -12,7 +12,7 @@ services:
|
|||||||
volume:
|
volume:
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
dockerfile: Dockerfile.go_build
|
dockerfile: Dockerfile
|
||||||
ports:
|
ports:
|
||||||
- 8080:8080
|
- 8080:8080
|
||||||
- 18080:18080
|
- 18080:18080
|
||||||
@@ -22,7 +22,7 @@ services:
|
|||||||
filer:
|
filer:
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
dockerfile: Dockerfile.go_build
|
dockerfile: Dockerfile
|
||||||
ports:
|
ports:
|
||||||
- 8888:8888
|
- 8888:8888
|
||||||
- 18888:18888
|
- 18888:18888
|
||||||
@@ -33,7 +33,7 @@ services:
|
|||||||
s3:
|
s3:
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
dockerfile: Dockerfile.go_build
|
dockerfile: Dockerfile
|
||||||
ports:
|
ports:
|
||||||
- 8333:8333
|
- 8333:8333
|
||||||
command: '-v=4 s3 -filer="filer:8888"'
|
command: '-v=4 s3 -filer="filer:8888"'
|
||||||
|
Reference in New Issue
Block a user