ваше сообщение коммита
This commit is contained in:
51
setup.sh
51
setup.sh
@@ -213,6 +213,27 @@ check_images() {
|
|||||||
print_green "✅ Все файлы образов найдены"
|
print_green "✅ Все файлы образов найдены"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Определение имени проекта Docker Compose
|
||||||
|
# Docker Compose использует имя директории (в нижнем регистре, с заменой дефисов на подчеркивания) как префикс
|
||||||
|
get_compose_project_name() {
|
||||||
|
# Используем переменную окружения COMPOSE_PROJECT_NAME, если установлена
|
||||||
|
if [ -n "${COMPOSE_PROJECT_NAME:-}" ]; then
|
||||||
|
echo "${COMPOSE_PROJECT_NAME}"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Определяем из имени текущей директории
|
||||||
|
local dir_name
|
||||||
|
dir_name=$(basename "$(pwd)" | tr '[:upper:]' '[:lower:]' | tr '-' '_' | sed 's/[^a-z0-9_]//g')
|
||||||
|
|
||||||
|
# Если директория называется "dle", используем "dle"
|
||||||
|
if [ "$dir_name" = "dle" ]; then
|
||||||
|
echo "dle"
|
||||||
|
else
|
||||||
|
echo "$dir_name"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# Проверка файлов томов
|
# Проверка файлов томов
|
||||||
check_volumes() {
|
check_volumes() {
|
||||||
print_blue "🔍 Проверка файлов томов..."
|
print_blue "🔍 Проверка файлов томов..."
|
||||||
@@ -260,12 +281,17 @@ import_images() {
|
|||||||
create_volumes() {
|
create_volumes() {
|
||||||
print_blue "💾 Создание томов..."
|
print_blue "💾 Создание томов..."
|
||||||
|
|
||||||
|
# Определяем имя проекта динамически
|
||||||
|
local project_name
|
||||||
|
project_name=$(get_compose_project_name)
|
||||||
|
print_blue "📋 Используется имя проекта: $project_name"
|
||||||
|
|
||||||
# Обязательные тома для релиза v1.0.1
|
# Обязательные тома для релиза v1.0.1
|
||||||
local volumes=(
|
local volumes=(
|
||||||
"digital_legal_entitydle_postgres_data"
|
"${project_name}_postgres_data"
|
||||||
"digital_legal_entitydle_ollama_data"
|
"${project_name}_ollama_data"
|
||||||
"digital_legal_entitydle_vector_search_data"
|
"${project_name}_vector_search_data"
|
||||||
"digital_legal_entitydle_backend_node_modules"
|
"${project_name}_backend_node_modules"
|
||||||
)
|
)
|
||||||
|
|
||||||
for volume in "${volumes[@]}"; do
|
for volume in "${volumes[@]}"; do
|
||||||
@@ -279,7 +305,7 @@ create_volumes() {
|
|||||||
|
|
||||||
# Опциональный том frontend_node_modules (только если есть в архиве)
|
# Опциональный том frontend_node_modules (только если есть в архиве)
|
||||||
if [ -f "docker-data/volumes/frontend_node_modules.tar.gz" ]; then
|
if [ -f "docker-data/volumes/frontend_node_modules.tar.gz" ]; then
|
||||||
local volume="digital_legal_entitydle_frontend_node_modules"
|
local volume="${project_name}_frontend_node_modules"
|
||||||
if docker volume ls | grep -q "$volume"; then
|
if docker volume ls | grep -q "$volume"; then
|
||||||
print_yellow "⚠️ Том $volume уже существует"
|
print_yellow "⚠️ Том $volume уже существует"
|
||||||
else
|
else
|
||||||
@@ -293,30 +319,35 @@ create_volumes() {
|
|||||||
import_volumes() {
|
import_volumes() {
|
||||||
print_blue "📥 Импорт данных в тома..."
|
print_blue "📥 Импорт данных в тома..."
|
||||||
|
|
||||||
|
# Определяем имя проекта динамически
|
||||||
|
local project_name
|
||||||
|
project_name=$(get_compose_project_name)
|
||||||
|
print_blue "📋 Используется имя проекта: $project_name"
|
||||||
|
|
||||||
# PostgreSQL
|
# PostgreSQL
|
||||||
print_blue "Импорт postgres_data..."
|
print_blue "Импорт postgres_data..."
|
||||||
docker run --rm -v digital_legal_entitydle_postgres_data:/target -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/postgres_data.tar.gz -C /target
|
docker run --rm -v "${project_name}_postgres_data:/target" -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/postgres_data.tar.gz -C /target
|
||||||
print_green "✅ postgres_data импортирован"
|
print_green "✅ postgres_data импортирован"
|
||||||
|
|
||||||
# Ollama
|
# Ollama
|
||||||
print_blue "Импорт ollama_data..."
|
print_blue "Импорт ollama_data..."
|
||||||
docker run --rm -v digital_legal_entitydle_ollama_data:/target -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/ollama_data.tar.gz -C /target
|
docker run --rm -v "${project_name}_ollama_data:/target" -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/ollama_data.tar.gz -C /target
|
||||||
print_green "✅ ollama_data импортирован"
|
print_green "✅ ollama_data импортирован"
|
||||||
|
|
||||||
# Vector Search
|
# Vector Search
|
||||||
print_blue "Импорт vector_search_data..."
|
print_blue "Импорт vector_search_data..."
|
||||||
docker run --rm -v digital_legal_entitydle_vector_search_data:/target -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/vector_search_data.tar.gz -C /target
|
docker run --rm -v "${project_name}_vector_search_data:/target" -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/vector_search_data.tar.gz -C /target
|
||||||
print_green "✅ vector_search_data импортирован"
|
print_green "✅ vector_search_data импортирован"
|
||||||
|
|
||||||
# Backend node_modules
|
# Backend node_modules
|
||||||
print_blue "Импорт backend_node_modules..."
|
print_blue "Импорт backend_node_modules..."
|
||||||
docker run --rm -v digital_legal_entitydle_backend_node_modules:/target -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/backend_node_modules.tar.gz -C /target
|
docker run --rm -v "${project_name}_backend_node_modules:/target" -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/backend_node_modules.tar.gz -C /target
|
||||||
print_green "✅ backend_node_modules импортирован"
|
print_green "✅ backend_node_modules импортирован"
|
||||||
|
|
||||||
# Frontend node_modules (опционально, только для dev режима)
|
# Frontend node_modules (опционально, только для dev режима)
|
||||||
if [ -f "docker-data/volumes/frontend_node_modules.tar.gz" ]; then
|
if [ -f "docker-data/volumes/frontend_node_modules.tar.gz" ]; then
|
||||||
print_blue "Импорт frontend_node_modules..."
|
print_blue "Импорт frontend_node_modules..."
|
||||||
docker run --rm -v digital_legal_entitydle_frontend_node_modules:/target -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/frontend_node_modules.tar.gz -C /target
|
docker run --rm -v "${project_name}_frontend_node_modules:/target" -v "$(pwd)/docker-data/volumes:/backup" alpine tar xzf /backup/frontend_node_modules.tar.gz -C /target
|
||||||
print_green "✅ frontend_node_modules импортирован"
|
print_green "✅ frontend_node_modules импортирован"
|
||||||
else
|
else
|
||||||
print_yellow "⚠️ frontend_node_modules.tar.gz не найден (не требуется для production)"
|
print_yellow "⚠️ frontend_node_modules.tar.gz не найден (не требуется для production)"
|
||||||
|
|||||||
Reference in New Issue
Block a user