swarmproxy/Dockerfile
OCram85 e1bec95c9d
All checks were successful
ci / docker (push) Successful in 23s
Adds entrypoint (#6)
#### 📖 Summary

- Adds docker entrypoint bash script.

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: #6
2023-07-12 10:55:59 +02:00

51 lines
1.4 KiB
Docker

FROM alpine:3.18.2
# Set labels manually, each build service differs in used or predefined labels.
LABEL maintainer="OCram85"
ARG VERSION
LABEL build_version="${VERSION}"
LABEL org.opencontainers.image.authors="OCram85"
LABEL org.opencontainers.image.vendor="OCram85"
LABEL org.opencontainers.image.title="swarmproxy"
LABEL org.opencontainers.image.description="tinyproxy docker image"
LABEL org.opencontainers.image.licenses="AGPL-3.0"
ARG TAG
LABEL org.opencontainers.image.version="${TAG}"
LABEL org.opencontainers.image.url="https://gitea.ocram85.com/OCram85/swarmproxy"
LABEL org.opencontainers.image.source="https://gitea.ocram85.com/OCram85/swarmproxy.git"
LABEL org.opencontainers.image.documentation="https://gitea.ocram85.com/OCram85/swarmproxy"
# Use a individual user and group ip for files and process
ENV TINYPROXY_UID 5123
ENV TINYPROXY_GID 5123
ENV UPSTREAM_PROXY ""
ENV UPSTREAM_PROXY_FILE ""
ENV PORT "8888"
ENV TIMEOUT "600"
ENV LOGLEVEL "Info"
ENV MAXCLIENTS "600"
ENV FILTER_FILE "/app/filter"
# get existing packages
# curl for healthchecks and debugging
RUN apk add --no-cache \
tinyproxy curl
COPY entrypoint.sh /app/entrypoint.sh
RUN touch /app/proxy.conf && \
chmod +x /app/entrypoint.sh && \
chown -R ${TINYPROXY_UID}:${TINYPROXY_GID} /app /etc/tinyproxy /var/log/tinyproxy
USER ${TINYPROXY_UID}:${TINYPROXY_GID}
WORKDIR /app
EXPOSE 8888
ENTRYPOINT ["/app/entrypoint.sh"]
CMD ["-c", "/app/proxy.conf", "-d"]