a9c16febf4
* test(skills): align sandbox cache tests with readonly behavior * ci(release): enforce core quality gate before publish * ci: enforce locked dependency installs in workflows * security: remove curl-pipe-shell installs * chore: align project python baseline to 3.12 * ci(dashboard): add explicit typecheck gate * chore(pre-commit): align ruff hook version with project * ci(codeql): add javascript-typescript analysis * chore(ruff): defer py312 migration lint rules * fix: resolve ruff violations without new ignores * fix: resolve ASYNC230 and ASYNC240 without ignores * fix(auth): replace utcnow with timezone-aware UTC now * fix: avoid blocking file read in file_to_base64
32 lines
718 B
Docker
32 lines
718 B
Docker
FROM python:3.12-slim
|
|
WORKDIR /AstrBot
|
|
|
|
COPY . /AstrBot/
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
gcc \
|
|
build-essential \
|
|
python3-dev \
|
|
libffi-dev \
|
|
libssl-dev \
|
|
ca-certificates \
|
|
bash \
|
|
ffmpeg \
|
|
curl \
|
|
git \
|
|
nodejs \
|
|
npm \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
|
|
|
RUN python -m pip install uv \
|
|
&& echo "3.12" > .python-version \
|
|
&& uv lock \
|
|
&& uv export --format requirements.txt --output-file requirements.txt --frozen \
|
|
&& uv pip install -r requirements.txt --no-cache-dir --system \
|
|
&& uv pip install socksio uv pilk --no-cache-dir --system
|
|
|
|
EXPOSE 6185
|
|
|
|
CMD ["python", "main.py"]
|