diff --git a/docker/miniprint/Dockerfile b/docker/miniprint/Dockerfile new file mode 100644 index 00000000..85933517 --- /dev/null +++ b/docker/miniprint/Dockerfile @@ -0,0 +1,26 @@ +FROM alpine:3.19 +# +# Install packages +RUN apk --no-cache -U add \ + git \ + python3 \ + py3-pip && \ + mkdir -p /opt && \ + cd /opt/ && \ + git clone https://github.com/t3chn0m4g3/miniprint && \ + cd miniprint && \ + pip3 install --break-system-packages -r requirements.txt && \ +# +# Setup user, groups and configs + addgroup -g 2000 miniprint && \ + adduser -S -H -s /bin/ash -u 2000 -D -g 2000 miniprint && \ +# +# Clean up + apk del --purge git && \ + rm -rf /root/* /var/cache/apk/* /opt/miniprint/.git +# +# Start miniprint +STOPSIGNAL SIGINT +USER miniprint:miniprint +WORKDIR /opt/miniprint/ +CMD ["/usr/bin/python3", "./server.py", "--bind", "0.0.0.0", "--log-file", "log/miniprint.json"] diff --git a/docker/miniprint/docker-compose.yml b/docker/miniprint/docker-compose.yml new file mode 100644 index 00000000..27576d01 --- /dev/null +++ b/docker/miniprint/docker-compose.yml @@ -0,0 +1,21 @@ +networks: + miniprint_local: + +services: + +# Miniprint service + miniprint: + build: . + container_name: miniprint + restart: always +# cpu_count: 1 +# cpus: 0.25 + networks: + - miniprint_local + ports: + - "9100:9100" + image: dtagdevsec/miniprint:testing + read_only: true + volumes: + - $HOME/tpotce/data/miniprint/log/:/opt/miniprint/log/ + - $HOME/tpotce/data/miniprint/uploads/:/opt/miniprint/uploads/