33 lines
1.0 KiB
Docker
33 lines
1.0 KiB
Docker
# syntax=docker/dockerfile:1.7
|
|
|
|
FROM python:3.12-slim
|
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1 \
|
|
PYTHONUNBUFFERED=1 \
|
|
PIP_DISABLE_PIP_VERSION_CHECK=1 \
|
|
PIP_NO_CACHE_DIR=1 \
|
|
TG_WS_PROXY_HOST=0.0.0.0 \
|
|
TG_WS_PROXY_PORT=1080 \
|
|
TG_WS_PROXY_DC_IPS="2:149.154.167.220 4:149.154.167.220"
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends build-essential cargo libffi-dev libssl-dev tini ca-certificates \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& groupadd --system app \
|
|
&& useradd --system --gid app --create-home --home-dir /home/app app
|
|
|
|
WORKDIR /app
|
|
COPY pyproject.toml README.md LICENSE ./
|
|
COPY proxy ./proxy
|
|
COPY utils ./utils
|
|
|
|
RUN pip install --upgrade pip setuptools wheel \
|
|
&& pip install .
|
|
|
|
USER app
|
|
|
|
EXPOSE 1080/tcp
|
|
|
|
ENTRYPOINT ["/usr/bin/tini", "--", "/bin/sh", "-lc", "set -eu; args=\"--host ${TG_WS_PROXY_HOST} --port ${TG_WS_PROXY_PORT}\"; for dc in ${TG_WS_PROXY_DC_IPS}; do args=\"$args --dc-ip $dc\"; done; exec python -u -m proxy.tg_ws_proxy $args \"$@\"", "--"]
|
|
CMD []
|