mirror of https://github.com/harness/drone.git
34 lines
974 B
Docker
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"]
|