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