mirror of
https://github.com/yyhuni/xingrin.git
synced 2026-01-31 11:46:16 +08:00
fix:目录创建挂载
This commit is contained in:
@@ -277,6 +277,8 @@ class TaskDistributor:
|
||||
# 挂载路径(所有节点统一使用固定路径)
|
||||
host_results_dir = settings.HOST_RESULTS_DIR # /opt/xingrin/results
|
||||
host_logs_dir = settings.HOST_LOGS_DIR # /opt/xingrin/logs
|
||||
host_fingerprints_dir = settings.HOST_FINGERPRINTS_DIR # /opt/xingrin/fingerprints
|
||||
host_wordlists_dir = settings.HOST_WORDLISTS_DIR # /opt/xingrin/wordlists
|
||||
|
||||
# 环境变量:SERVER_URL + IS_LOCAL,其他配置容器启动时从配置中心获取
|
||||
# IS_LOCAL 用于 Worker 向配置中心声明身份,决定返回的数据库地址
|
||||
@@ -296,6 +298,8 @@ class TaskDistributor:
|
||||
volumes = [
|
||||
f"-v {host_results_dir}:{self.results_mount}",
|
||||
f"-v {host_logs_dir}:{self.logs_mount}",
|
||||
f"-v {host_fingerprints_dir}:{host_fingerprints_dir}",
|
||||
f"-v {host_wordlists_dir}:{host_wordlists_dir}",
|
||||
]
|
||||
|
||||
# 构建命令行参数
|
||||
|
||||
@@ -336,9 +336,11 @@ TASK_SUBMIT_INTERVAL = int(os.getenv('TASK_SUBMIT_INTERVAL', '6'))
|
||||
DOCKER_NETWORK_NAME = os.getenv('DOCKER_NETWORK_NAME', 'xingrin_network')
|
||||
|
||||
# 宿主机挂载源路径(所有节点统一使用固定路径)
|
||||
# 部署前需创建:mkdir -p /opt/xingrin/{results,logs}
|
||||
# 部署前需创建:mkdir -p /opt/xingrin/{results,logs,fingerprints,wordlists}
|
||||
HOST_RESULTS_DIR = '/opt/xingrin/results'
|
||||
HOST_LOGS_DIR = '/opt/xingrin/logs'
|
||||
HOST_FINGERPRINTS_DIR = '/opt/xingrin/fingerprints'
|
||||
HOST_WORDLISTS_DIR = '/opt/xingrin/wordlists'
|
||||
|
||||
# ============================================
|
||||
# Worker 配置中心(任务容器从 /api/workers/config/ 获取)
|
||||
|
||||
@@ -108,7 +108,9 @@ create_dirs() {
|
||||
log_info "创建数据目录..."
|
||||
sudo mkdir -p "${MARKER_DIR}/results"
|
||||
sudo mkdir -p "${MARKER_DIR}/logs"
|
||||
sudo chmod -R 755 "${MARKER_DIR}"
|
||||
sudo mkdir -p "${MARKER_DIR}/fingerprints"
|
||||
sudo mkdir -p "${MARKER_DIR}/wordlists"
|
||||
sudo chmod -R 777 "${MARKER_DIR}"
|
||||
log_success "数据目录已创建"
|
||||
}
|
||||
|
||||
|
||||
@@ -112,6 +112,8 @@ services:
|
||||
volumes:
|
||||
- /opt/xingrin/results:/app/backend/results
|
||||
- /opt/xingrin/logs:/app/backend/logs
|
||||
- /opt/xingrin/fingerprints:/opt/xingrin/fingerprints
|
||||
- /opt/xingrin/wordlists:/opt/xingrin/wordlists
|
||||
command: echo "Worker image built for development"
|
||||
|
||||
volumes:
|
||||
|
||||
@@ -47,9 +47,11 @@ services:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
volumes:
|
||||
# 统一使用固定路径(部署时需创建:mkdir -p /opt/xingrin/{results,logs})
|
||||
# 统一使用固定路径(部署时需创建:mkdir -p /opt/xingrin/{results,logs,fingerprints,wordlists})
|
||||
- /opt/xingrin/results:/app/backend/results
|
||||
- /opt/xingrin/logs:/app/backend/logs
|
||||
- /opt/xingrin/fingerprints:/opt/xingrin/fingerprints
|
||||
- /opt/xingrin/wordlists:/opt/xingrin/wordlists
|
||||
# Docker Socket 挂载:允许 Django 服务器执行本地 docker 命令(用于本地 Worker 任务分发)
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
healthcheck:
|
||||
|
||||
@@ -335,6 +335,13 @@ if [[ "$OSTYPE" == "linux-gnu"* ]]; then
|
||||
fi
|
||||
|
||||
step "[3/3] 初始化配置"
|
||||
|
||||
# 创建数据目录
|
||||
info "创建数据目录..."
|
||||
mkdir -p /opt/xingrin/{results,logs,fingerprints,wordlists}
|
||||
chmod -R 777 /opt/xingrin
|
||||
success "数据目录已创建: /opt/xingrin/{results,logs,fingerprints,wordlists}"
|
||||
|
||||
DOCKER_DIR="$ROOT_DIR/docker"
|
||||
if [ ! -d "$DOCKER_DIR" ]; then
|
||||
error "未找到 docker 目录,请确认项目结构。"
|
||||
|
||||
Reference in New Issue
Block a user