Changed crystal template, picked latest flask one
This commit is contained in:
38
template/crystal/Dockerfile
Normal file
38
template/crystal/Dockerfile
Normal file
@ -0,0 +1,38 @@
|
||||
FROM crystallang/crystal:1.8.0 as builder
|
||||
|
||||
RUN apt update \
|
||||
&& apt install -y curl \
|
||||
&& echo "Pulling watchdog binary from Github." \
|
||||
&& curl -sSL https://github.com/openfaas/faas/releases/download/0.9.6/fwatchdog > /usr/bin/fwatchdog \
|
||||
&& chmod +x /usr/bin/fwatchdog
|
||||
|
||||
WORKDIR /home/app
|
||||
COPY . .
|
||||
|
||||
COPY function/shard.yml shard.yml
|
||||
RUN shards install
|
||||
RUN crystal build main.cr -o handler --release
|
||||
|
||||
FROM crystallang/crystal:1.8.0
|
||||
RUN apt install ca-certificates
|
||||
|
||||
# Add non root user
|
||||
RUN adduser app
|
||||
RUN mkdir -p /home/app
|
||||
|
||||
WORKDIR /home/app
|
||||
|
||||
COPY --from=builder /usr/bin/fwatchdog .
|
||||
COPY --from=builder /home/app/function/ .
|
||||
COPY --from=builder /home/app/handler .
|
||||
|
||||
RUN chown -R app /home/app
|
||||
|
||||
USER app
|
||||
|
||||
ENV fprocess="./handler"
|
||||
EXPOSE 8080
|
||||
|
||||
HEALTHCHECK --interval=2s CMD [ -e /tmp/.lock ] || exit 1
|
||||
|
||||
CMD ["./fwatchdog"]
|
Reference in New Issue
Block a user