feat: Добавлены команды для установки и обновления Docker
- Добавлена команда make docker-install для установки Docker через get.docker.com - Добавлена команда make docker-update для обновления Docker - Добавлена команда make docker-compose-install для установки Docker Compose - Добавлена команда make docker-compose-update для обновления Docker Compose - Добавлена команда make docker-check для проверки версий и статуса - Обновлена документация с инструкциями по установке Docker - Все команды включают проверки существования и информативные сообщения - Поддержка как docker-compose, так и docker compose (новый формат) Автор: Сергей Антропов, сайт: https://devops.org.ru
This commit is contained in:
parent
db957f9890
commit
95c7bc6432
84
Makefile
84
Makefile
@ -8,6 +8,7 @@ COMPOSE_FILE := docker-compose.yml
|
||||
.PHONY: help setup up down restart status logs clean
|
||||
.PHONY: kafka-topics kafka-ui postgres-cli clickhouse-cli
|
||||
.PHONY: health-check backup restore ssl-generate ssl-clean ssl-info
|
||||
.PHONY: docker-install docker-update docker-compose-install docker-compose-update docker-check
|
||||
|
||||
# =============================================================================
|
||||
# ОСНОВНЫЕ КОМАНДЫ
|
||||
@ -39,6 +40,89 @@ setup: ## Первоначальная настройка инфраструкт
|
||||
@$(MAKE) health-check
|
||||
@echo "✅ Инфраструктура готова к работе!"
|
||||
|
||||
# =============================================================================
|
||||
# УСТАНОВКА И ОБНОВЛЕНИЕ DOCKER
|
||||
# =============================================================================
|
||||
|
||||
docker-install: ## Установить Docker через get.docker.com
|
||||
@echo "🐳 Установка Docker..."
|
||||
@if command -v docker >/dev/null 2>&1; then \
|
||||
echo "⚠️ Docker уже установлен. Используйте 'make docker-update' для обновления."; \
|
||||
exit 1; \
|
||||
fi
|
||||
@echo "📥 Загрузка и установка Docker..."
|
||||
@curl -fsSL https://get.docker.com -o get-docker.sh
|
||||
@sudo sh get-docker.sh
|
||||
@rm get-docker.sh
|
||||
@echo "🔧 Добавление пользователя в группу docker..."
|
||||
@sudo usermod -aG docker $$USER
|
||||
@echo "✅ Docker установлен успешно!"
|
||||
@echo "💡 Перезайдите в систему или выполните 'newgrp docker' для применения изменений группы"
|
||||
|
||||
docker-update: ## Обновить Docker до последней версии
|
||||
@echo "🔄 Обновление Docker..."
|
||||
@if ! command -v docker >/dev/null 2>&1; then \
|
||||
echo "❌ Docker не установлен. Используйте 'make docker-install' для установки."; \
|
||||
exit 1; \
|
||||
fi
|
||||
@echo "📥 Загрузка и установка последней версии Docker..."
|
||||
@curl -fsSL https://get.docker.com -o get-docker.sh
|
||||
@sudo sh get-docker.sh
|
||||
@rm get-docker.sh
|
||||
@echo "✅ Docker обновлен успешно!"
|
||||
|
||||
docker-compose-install: ## Установить Docker Compose
|
||||
@echo "🐳 Установка Docker Compose..."
|
||||
@if command -v docker-compose >/dev/null 2>&1 || docker compose version >/dev/null 2>&1; then \
|
||||
echo "⚠️ Docker Compose уже установлен. Используйте 'make docker-compose-update' для обновления."; \
|
||||
exit 1; \
|
||||
fi
|
||||
@echo "📥 Загрузка Docker Compose..."
|
||||
@sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$$(uname -s)-$$(uname -m)" -o /usr/local/bin/docker-compose
|
||||
@sudo chmod +x /usr/local/bin/docker-compose
|
||||
@echo "✅ Docker Compose установлен успешно!"
|
||||
|
||||
docker-compose-update: ## Обновить Docker Compose до последней версии
|
||||
@echo "🔄 Обновление Docker Compose..."
|
||||
@if ! command -v docker-compose >/dev/null 2>&1 && ! docker compose version >/dev/null 2>&1; then \
|
||||
echo "❌ Docker Compose не установлен. Используйте 'make docker-compose-install' для установки."; \
|
||||
exit 1; \
|
||||
fi
|
||||
@echo "📥 Загрузка последней версии Docker Compose..."
|
||||
@sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$$(uname -s)-$$(uname -m)" -o /usr/local/bin/docker-compose
|
||||
@sudo chmod +x /usr/local/bin/docker-compose
|
||||
@echo "✅ Docker Compose обновлен успешно!"
|
||||
|
||||
docker-check: ## Проверить версии Docker и Docker Compose
|
||||
@echo "🔍 Проверка версий Docker и Docker Compose..."
|
||||
@echo ""
|
||||
@echo "🐳 Docker:"
|
||||
@if command -v docker >/dev/null 2>&1; then \
|
||||
docker --version; \
|
||||
else \
|
||||
echo "❌ Docker не установлен"; \
|
||||
fi
|
||||
@echo ""
|
||||
@echo "🐳 Docker Compose:"
|
||||
@if command -v docker-compose >/dev/null 2>&1; then \
|
||||
docker-compose --version; \
|
||||
elif docker compose version >/dev/null 2>&1; then \
|
||||
docker compose version; \
|
||||
else \
|
||||
echo "❌ Docker Compose не установлен"; \
|
||||
fi
|
||||
@echo ""
|
||||
@echo "🔧 Docker Engine статус:"
|
||||
@if command -v docker >/dev/null 2>&1; then \
|
||||
if docker info >/dev/null 2>&1; then \
|
||||
echo "✅ Docker Engine запущен"; \
|
||||
else \
|
||||
echo "❌ Docker Engine не запущен"; \
|
||||
fi; \
|
||||
else \
|
||||
echo "❌ Docker не установлен"; \
|
||||
fi
|
||||
|
||||
# =============================================================================
|
||||
# УПРАВЛЕНИЕ ИНФРАСТРУКТУРОЙ
|
||||
# =============================================================================
|
||||
|
72
README.md
72
README.md
@ -62,6 +62,11 @@ SensusInfra — это полная инфраструктура для рабо
|
||||
# Клонируйте репозиторий и перейдите в директорию
|
||||
cd SensusInfra
|
||||
|
||||
# Установите Docker и Docker Compose (если не установлены)
|
||||
make docker-check # Проверить текущие версии
|
||||
make docker-install # Установить Docker
|
||||
make docker-compose-install # Установить Docker Compose
|
||||
|
||||
# Файл .env будет создан автоматически при выполнении make setup
|
||||
# Или создайте вручную:
|
||||
cp env.example .env
|
||||
@ -106,6 +111,16 @@ make logs # Логи всех сервисов
|
||||
| `make logs` | Показать логи всех сервисов |
|
||||
| `make health-check` | Проверить здоровье сервисов |
|
||||
|
||||
### Установка и обновление Docker
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `make docker-install` | Установить Docker через get.docker.com |
|
||||
| `make docker-update` | Обновить Docker до последней версии |
|
||||
| `make docker-compose-install` | Установить Docker Compose |
|
||||
| `make docker-compose-update` | Обновить Docker Compose до последней версии |
|
||||
| `make docker-check` | Проверить версии Docker и Docker Compose |
|
||||
|
||||
### Работа с базами данных
|
||||
|
||||
| Команда | Описание |
|
||||
@ -125,6 +140,63 @@ make logs # Логи всех сервисов
|
||||
| `make ssl-clean` | Очистка SSL сертификатов |
|
||||
| `make ssl-info` | Информация о SSL сертификатах |
|
||||
|
||||
## Установка Docker
|
||||
|
||||
### Автоматическая установка
|
||||
|
||||
Проект включает команды для автоматической установки и обновления Docker:
|
||||
|
||||
```bash
|
||||
# Проверить текущие версии
|
||||
make docker-check
|
||||
|
||||
# Установить Docker (если не установлен)
|
||||
make docker-install
|
||||
|
||||
# Установить Docker Compose (если не установлен)
|
||||
make docker-compose-install
|
||||
|
||||
# Обновить Docker до последней версии
|
||||
make docker-update
|
||||
|
||||
# Обновить Docker Compose до последней версии
|
||||
make docker-compose-update
|
||||
```
|
||||
|
||||
### Ручная установка
|
||||
|
||||
Если автоматическая установка не работает, используйте официальные инструкции:
|
||||
|
||||
#### Docker
|
||||
```bash
|
||||
# Ubuntu/Debian
|
||||
curl -fsSL https://get.docker.com -o get-docker.sh
|
||||
sudo sh get-docker.sh
|
||||
|
||||
# CentOS/RHEL
|
||||
sudo yum install -y docker
|
||||
sudo systemctl start docker
|
||||
sudo systemctl enable docker
|
||||
```
|
||||
|
||||
#### Docker Compose
|
||||
```bash
|
||||
# Скачать последнюю версию
|
||||
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
||||
sudo chmod +x /usr/local/bin/docker-compose
|
||||
```
|
||||
|
||||
### Проверка установки
|
||||
|
||||
```bash
|
||||
# Проверить версии
|
||||
make docker-check
|
||||
|
||||
# Или вручную
|
||||
docker --version
|
||||
docker compose version
|
||||
```
|
||||
|
||||
### Обслуживание
|
||||
|
||||
| Команда | Описание |
|
||||
|
Loading…
x
Reference in New Issue
Block a user