digitalization-2025-10/README.md

94 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Практикум: «Работа с реляционными и нереляционными СУБД»
#### Установка Docker Desktop на Windows
- Требования:
- Windows 10 21H2/22H2 (19044/19045) или Windows 11
- Включенная виртуализация в BIOS/UEFI (Intel VT-x/AMD-V)
- Рекомендовано: WSL 2
- Включить компоненты Windows (PowerShell от имени администратора):
```powershell
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
```
Перезагрузите компьютер.
- Установить ядро WSL2 (если требуется):
```powershell
wsl --install --no-distribution
wsl --update
```
- Скачать и установить Docker Desktop: см. страницу загрузки [Docker Desktop for Windows](https://www.docker.com/products/docker-desktop/). Во время установки оставьте галочку «Use WSL 2 based engine».
- Первый запуск и базовые настройки:
- Войти с Docker ID (или пропустить для локальной работы)
- Settings → General: убедитесь, что «Use the WSL 2 based engine» включен
- Settings → Resources → WSL Integration: включите интеграцию для нужных дистрибутивов WSL
- Проверка установки:
```powershell
docker version
docker run hello-world
docker run --rm -it alpine:3.20 echo "Docker OK"
```
## PostgreSQL with Docker
- **Установите Docker Desktop**: Убедитесь, что Docker установлен и запущен на вашем компьютере.
- **Скачать образ Postgres**:
```bash
docker pull postgres:16
```
- **Запустить контейнер PostgreSQL**:
```bash
docker run --name pg-local -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=appdb -p 5432:5432 -v pgdata:/var/lib/postgresql/data -d postgres:16
```
- **Проверить, что контейнер запущен**:
```bash
docker ps
```
- **Подключение к PostgreSQL**:
- С хоста через psql (Windows PowerShell, macOS, Linux):
```bash
psql -h localhost -p 5432 -U postgres -d appdb
```
При запросе пароля введите: `postgres`.
- URIстрока подключения (подходит для приложений/GUIклиентов):
```
postgres://postgres:postgres@localhost:5432/appdb
```
- Через psql внутри контейнера:
```bash
docker exec -it pg-local psql -U postgres -d appdb
```
- Параметры для GUIклиента (pgAdmin, DBeaver и др.):
- Host: `localhost`
- Port: `5432`
- User: `postgres`
- Password: `postgres`
- Database: `appdb`
- Быстрая проверка подключения (внутри psql):
```sql
SELECT version();
```
- **Полезные команды**:
```bash
# Остановить / запустить / удалить контейнер
docker stop pg-local
docker start pg-local
docker rm -f pg-local
# Удалить том с данными (необратимо)
docker volume rm pgdata
```