123456789101112131415161718192021222324252627282930313233343536 |
- FROM --platform=linux/amd64 python:3.8
- ENV POETRY_VERSION=1.6.1 \
- POETRY_NO_INTERACTION=1 \
- POETRY_VIRTUALENVS_IN_PROJECT=false \
- POETRY_VIRTUALENVS_CREATE=false \
- DEBIAN_FRONTEND=noninteractive \
- DISPLAY=:99
- # Install packages
- RUN apt-get update && apt-get install --no-install-recommends -y \
- sudo git build-essential chromium chromium-driver \
- && rm -rf /var/lib/apt/lists/*
- # Create remote user
- ARG USERNAME=vscode
- ARG USER_UID=1000
- ARG USER_GID=$USER_UID
- RUN groupadd --gid $USER_GID $USERNAME \
- && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \
- && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
- && chmod 0440 /etc/sudoers.d/$USERNAME
- ENV PATH="/home/${USERNAME}/.local/bin:${PATH}"
- ENV CHROME_BINARY_LOCATION=/usr/bin/chromium
- # Install nicegui
- RUN pip install -U pip && pip install poetry==$POETRY_VERSION
- COPY pyproject.toml poetry.lock README.md ./
- RUN poetry install --all-extras --no-root
- RUN pip install latex2mathml
- USER $USERNAME
- ENTRYPOINT ["poetry", "run", "python", "-m", "debugpy", "--listen" ,"5678", "main.py"]
|