Update aquatic_ws.Dockerfile

This commit is contained in:
Joakim Frostegård 2022-07-19 22:43:47 +02:00
parent 375dc1c8e6
commit d4f9c0b74f

View file

@ -1,10 +1,19 @@
# aquatic_ws
#
# If no changes are made to settings, aquatic_ws is run without
# TLS, on port 3000 and with http health checks enabled.
# WORK IN PROGRESS
#
# Customize by setting CONFIG_FILE_CONTENTS and
# ACCESS_LIST_CONTENTS environment variables.
#
# If no changes are made to configuration, aquatic_ws is run:
# - on port 3000
# - without TLS
# - with no info hash access control
# - with http health checks enabled
#
# Run from root directory of repository with:
# $ docker build -t aquatic-ws -f docker/aquatic_ws.Dockerfile .
# $ docker run -it --rm --ulimit memlock=65536:65536 -p 3000:3000 --name aquatic-ws aquatic-ws
# $ docker run -it --ulimit memlock=65536:65536 -p 0.0.0.0:3000:3000 --name aquatic-ws aquatic-ws
FROM rust:latest AS builder
@ -16,17 +25,14 @@ RUN . ./scripts/env-native-cpu-without-avx-512 && cargo build --release -p aquat
FROM debian:stable-slim
ENV CONFIG_FILE_CONTENTS "log_level = 'trace'\n\n[network]\nenable_http_health_checks = true"
ENV CONFIG_FILE_CONTENTS "log_level = 'warn'\n\n[network]\nenable_http_health_checks = true"
ENV ACCESS_LIST_CONTENTS ""
WORKDIR /root/
COPY --from=builder /usr/src/aquatic/target/release/aquatic_ws ./
RUN echo "$CONFIG_FILE_CONTENTS" > ./config.toml
RUN echo "$ACCESS_LIST_CONTENTS" > ./access-list.txt
# Enable setting config and access list file contents at runtime
RUN echo "#!/bin/sh\necho \"\$CONFIG_FILE_CONTENTS\" > ./config.toml\necho \"\$ACCESS_LIST_CONTENTS\" > ./access-list.txt\n./aquatic_ws -P -c ./config.toml" > entrypoint.sh && chmod +x entrypoint.sh
ENTRYPOINT ["sh", "./entrypoint.sh"]
ENTRYPOINT ["./entrypoint.sh"]