feat: adjust docker image build
This commit is contained in:
@@ -10,6 +10,7 @@ baihu
|
||||
|
||||
# Data & Logs
|
||||
data/
|
||||
envs/
|
||||
# logs/
|
||||
# scripts/
|
||||
configs/config.ini
|
||||
|
||||
+1
-4
@@ -50,7 +50,7 @@ RUN CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} \
|
||||
FROM debian:bookworm-slim
|
||||
|
||||
ENV TZ=Asia/Shanghai
|
||||
ENV PATH="/opt/venv/bin:$PATH"
|
||||
ENV PATH="/app/envs/python/bin:$PATH"
|
||||
|
||||
# 安装必要系统工具 + Node + Python
|
||||
RUN sed -i 's@deb.debian.org@mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.list.d/debian.sources \
|
||||
@@ -60,9 +60,6 @@ RUN sed -i 's@deb.debian.org@mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.li
|
||||
&& apt-get update \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
tzdata git gcc curl wget vim nodejs npm python3 python3-venv python3-pip \
|
||||
&& python3 -m venv /opt/venv \
|
||||
&& /opt/venv/bin/pip install --upgrade pip \
|
||||
&& /opt/venv/bin/pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
@@ -9,6 +9,7 @@ services:
|
||||
volumes:
|
||||
- ./data:/app/data
|
||||
- ./configs:/app/configs
|
||||
- ./envs:/app/envs
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -8,6 +8,7 @@ services:
|
||||
volumes:
|
||||
- ./data:/app/data
|
||||
- ./configs:/app/configs
|
||||
- ./envs:/app/envs
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
restart: unless-stopped
|
||||
+15
-17
@@ -1,31 +1,29 @@
|
||||
#!/bin/sh
|
||||
|
||||
# ============================
|
||||
# 激活 Python 虚拟环境
|
||||
# ============================
|
||||
if [ -d /opt/venv ]; then
|
||||
export PATH="/opt/venv/bin:$PATH"
|
||||
fi
|
||||
PYTHON_VENV_DIR="/app/envs/python"
|
||||
|
||||
# ============================
|
||||
# 创建必要目录
|
||||
# ============================
|
||||
mkdir -p /app/data /app/data/scripts /app/configs
|
||||
mkdir -p /app/data /app/data/scripts /app/configs /app/envs
|
||||
|
||||
# ============================
|
||||
# 设置不可变属性
|
||||
# 创建 Python 虚拟环境(如果不存在)
|
||||
# ============================
|
||||
if [ -f /app/data/ql.db ]; then
|
||||
chattr +i /app/data/ql.db 2>/dev/null || true
|
||||
if [ ! -d "$PYTHON_VENV_DIR" ]; then
|
||||
echo "Creating Python virtual environment..."
|
||||
python3 -m venv "$PYTHON_VENV_DIR"
|
||||
"$PYTHON_VENV_DIR/bin/pip" install --upgrade pip
|
||||
"$PYTHON_VENV_DIR/bin/pip" config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
|
||||
echo "Python virtual environment created at $PYTHON_VENV_DIR"
|
||||
else
|
||||
echo "Python virtual environment already exists at $PYTHON_VENV_DIR"
|
||||
fi
|
||||
|
||||
if [ -d /app/configs ]; then
|
||||
chattr +i /app/configs 2>/dev/null || true
|
||||
fi
|
||||
|
||||
if [ -d /app/data/scripts ]; then
|
||||
chattr +i /app/data/scripts 2>/dev/null || true
|
||||
fi
|
||||
# ============================
|
||||
# 激活 Python 虚拟环境
|
||||
# ============================
|
||||
export PATH="$PYTHON_VENV_DIR/bin:$PATH"
|
||||
|
||||
# ============================
|
||||
# 启动应用
|
||||
|
||||
Reference in New Issue
Block a user