74f845b06d
* fix: Dockerfile python main.py 改为uv run main.py * fix(dockerfile): 减少重复安装 * fix: 修复一些细节问题 * fix(.dockerignore): 需要git文件夹以获取astrbot版本(带git commit hash后缀) * fix(.dockerignore): uv run之前会uv sync
40 lines
939 B
Plaintext
40 lines
939 B
Plaintext
FROM python:3.11-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 \
|
|
curl \
|
|
unzip \
|
|
ca-certificates \
|
|
bash \
|
|
git \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
|
|
|
ENV NVM_DIR="/root/.nvm" \
|
|
NODE_VERSION=22
|
|
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.2/install.sh | bash && \
|
|
. "$NVM_DIR/nvm.sh" && \
|
|
nvm install $NODE_VERSION && \
|
|
nvm use $NODE_VERSION && \
|
|
nvm alias default $NODE_VERSION && \
|
|
node -v && npm -v && \
|
|
echo "3.11" > .python-version
|
|
ENV PATH="$NVM_DIR/versions/node/v$(node -v | cut -d 'v' -f 2)/bin:$PATH"
|
|
|
|
RUN python -m pip install --no-cache-dir uv
|
|
|
|
# 安装项目依赖(根据指南,使用 uv sync)
|
|
RUN uv sync --no-cache
|
|
|
|
EXPOSE 6185
|
|
EXPOSE 6186
|
|
|
|
CMD ["uv", "run", "main.py"] |