drone/docker/Dockerfile.server.linux.arm64

34 lines
974 B
Docker

# docker build --rm -f docker/Dockerfile -t drone/drone .
FROM alpine:3.20
# Expose necessary ports and define volume
EXPOSE 80 443
VOLUME /data
# Install necessary certificates and timezone data
RUN apk add -U --no-cache ca-certificates tzdata && \
cp -r /usr/share/zoneinfo /etc/zoneinfo && \
rm -rf /var/cache/apk/*
# Configure /etc/nsswitch.conf to prevent DNS-related errors
RUN sh -c "if [ ! -f /etc/nsswitch.conf ]; then echo 'hosts: files dns' > /etc/nsswitch.conf; fi"
# Environment variables
ENV GODEBUG netdns=go
ENV XDG_CACHE_HOME /data
ENV DRONE_DATABASE_DRIVER sqlite3
ENV DRONE_DATABASE_DATASOURCE /data/database.sqlite
ENV DRONE_RUNNER_OS=linux
ENV DRONE_RUNNER_ARCH=arm64
ENV DRONE_SERVER_PORT=:80
ENV DRONE_SERVER_HOST=localhost
ENV DRONE_DATADOG_ENABLED=true
ENV DRONE_DATADOG_ENDPOINT=https://stats.drone.ci/api/v1/series
# Add the binary
ADD release/linux/arm64/drone-server /bin/
# Define the entrypoint
ENTRYPOINT ["/bin/drone-server"]