2024-03-11 16:33:53 +00:00
|
|
|
FROM alpine:3.19
|
2022-02-09 19:13:18 +00:00
|
|
|
#
|
2022-02-22 17:57:55 +00:00
|
|
|
# Include dist
|
2022-03-14 21:50:19 +00:00
|
|
|
COPY dist/ /root/dist/
|
|
|
|
#
|
2022-02-09 19:13:18 +00:00
|
|
|
# Install packages
|
2022-03-08 23:36:03 +00:00
|
|
|
RUN apk -U --no-cache add \
|
2024-03-11 16:33:53 +00:00
|
|
|
build-base \
|
|
|
|
git \
|
|
|
|
libcap \
|
|
|
|
py3-click \
|
|
|
|
py3-flask \
|
|
|
|
py3-itsdangerous \
|
|
|
|
py3-jinja2 \
|
|
|
|
py3-markupsafe \
|
|
|
|
py3-pip \
|
|
|
|
py3-ua-parser \
|
|
|
|
py3-werkzeug \
|
|
|
|
py3-yaml \
|
|
|
|
python3 \
|
|
|
|
python3-dev && \
|
2022-02-09 19:13:18 +00:00
|
|
|
#
|
|
|
|
# Install wordpot from GitHub and setup
|
|
|
|
mkdir -p /opt && \
|
|
|
|
cd /opt/ && \
|
2024-03-11 16:33:53 +00:00
|
|
|
git clone https://github.com/t3chn0m4g3/wordpot && \
|
|
|
|
cd wordpot && \
|
|
|
|
git checkout 8fedeb1b74e1d225da2a7273656bf0afa84a20aa && \
|
2022-03-14 21:50:19 +00:00
|
|
|
cp /root/dist/requirements.txt . && \
|
2024-03-11 16:33:53 +00:00
|
|
|
pip3 install --break-system-packages -r requirements.txt && \
|
|
|
|
setcap cap_net_bind_service=+ep $(readlink -f $(type -P python3)) && \
|
2022-02-09 19:13:18 +00:00
|
|
|
#
|
|
|
|
# Setup user, groups and configs
|
|
|
|
addgroup -g 2000 wordpot && \
|
|
|
|
adduser -S -H -s /bin/ash -u 2000 -D -g 2000 wordpot && \
|
2024-03-11 16:33:53 +00:00
|
|
|
chown wordpot:wordpot -R /opt/wordpot && \
|
2022-02-09 19:13:18 +00:00
|
|
|
#
|
|
|
|
# Clean up
|
|
|
|
apk del --purge build-base \
|
2024-03-11 16:33:53 +00:00
|
|
|
git \
|
|
|
|
python3-dev && \
|
|
|
|
rm -rf /root/* /var/cache/apk/* /opt/wordpot/.git
|
2022-02-09 19:13:18 +00:00
|
|
|
#
|
|
|
|
# Start wordpot
|
|
|
|
STOPSIGNAL SIGINT
|
|
|
|
USER wordpot:wordpot
|
2024-03-11 16:33:53 +00:00
|
|
|
WORKDIR /opt/wordpot
|
|
|
|
CMD ["/usr/bin/python3","wordpot.py", "--host", "0.0.0.0", "--port", "80", "--title", "Wordpress"]
|