# 📦 Установка зависимостей

## Предварительные требования

- Docker (версия 20.10+)
- Make (GNU Make 3.81+)
- Git (версия 2.0+)

## Linux (Ubuntu/Debian)

```bash
# Обновление системы
sudo apt-get update

# Установка Docker
sudo apt-get install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker
sudo usermod -aG docker $USER

# Установка Make
sudo apt-get install -y make

# Установка Git (если не установлен)
sudo apt-get install -y git

# Перезагрузка для применения изменений группы
sudo reboot

# Проверка установки
docker --version
make --version
git --version
```

## Linux (CentOS/RHEL/Fedora)

```bash
# Для CentOS/RHEL
sudo yum install -y docker make git
sudo systemctl start docker
sudo systemctl enable docker
sudo usermod -aG docker $USER

# Для Fedora
sudo dnf install -y docker make git
sudo systemctl start docker
sudo systemctl enable docker
sudo usermod -aG docker $USER

# Проверка установки
docker --version
make --version
git --version
```

## macOS

### Вариант 1: Через Homebrew (рекомендуется)
```bash
# Установка Homebrew (если не установлен)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Установка зависимостей
brew install docker
brew install make
brew install git

# Запуск Docker Desktop
open /Applications/Docker.app

# Проверка установки
docker --version
make --version
git --version
```

### Вариант 2: Docker Desktop
```bash
# 1. Скачайте Docker Desktop с https://www.docker.com/products/docker-desktop
# 2. Установите Docker Desktop
# 3. Установите Make через Homebrew
brew install make

# Проверка установки
docker --version
make --version
```

## Windows

### Вариант 1: WSL2 (рекомендуется)
```powershell
# В PowerShell от имени администратора
wsl --install

# Перезагрузите компьютер, затем в WSL2:
sudo apt-get update
sudo apt-get install -y docker.io make git
sudo systemctl start docker
sudo usermod -aG docker $USER

# Проверка установки
docker --version
make --version
git --version
```

### Вариант 2: Git Bash
```bash
# 1. Установите Docker Desktop с https://www.docker.com/products/docker-desktop
# 2. Установите Git for Windows с https://git-scm.com/download/win
#    (Make поставляется с Git for Windows)

# Проверка установки в Git Bash
docker --version
make --version
git --version
```

## Проверка установки

После установки выполните проверку:

```bash
# Проверка Docker
docker --version
docker run hello-world

# Проверка Make
make --version

# Проверка Git
git --version

# Проверка прав Docker (Linux/macOS)
docker ps
```

## Устранение проблем установки

### Проблема: "docker: command not found"
```bash
# Linux
sudo apt-get update && sudo apt-get install -y docker.io

# macOS
brew install docker

# Windows
# Убедитесь, что Docker Desktop запущен
```

### Проблема: "permission denied while trying to connect to Docker daemon"
```bash
# Linux/macOS
sudo usermod -aG docker $USER
# Перезагрузите систему или выполните:
newgrp docker
```

### Проблема: "make: command not found"
```bash
# Ubuntu/Debian
sudo apt-get install -y make

# CentOS/RHEL
sudo yum install -y make

# Fedora
sudo dnf install -y make

# macOS
brew install make

# Windows
# Make поставляется с Git for Windows
```

## Установка проекта

1. **Клонируйте репозиторий:**
```bash
git clone <repository-url>
cd Dockerfile
```

2. **Проверьте Makefile:**
```bash
make help
```

3. **Проверьте Docker:**
```bash
make docker print-config
```
