This commit is contained in:
2026-01-19 05:35:37 +03:00
commit cbbc605336
20 changed files with 841 additions and 0 deletions

7
docker-pack/Dockerfile Normal file
View File

@@ -0,0 +1,7 @@
FROM php:8.2-apache
RUN docker-php-ext-install mysqli
RUN a2enmod rewrite headers
WORKDIR /var/www/html

56
docker-pack/README.md Normal file
View File

@@ -0,0 +1,56 @@
# Docker инструкция (Windows)
Все файлы для Docker лежат в `docker-pack/` и не трогают текущее решение.
## Требования
- Docker Desktop (включите WSL2 backend)
## Быстрый старт
1. Перейдите в каталог:
- `cd d:\work\code\auth\docker-pack`
2. Соберите и запустите контейнеры:
- `docker compose up -d --build`
3. Откройте в браузере:
- `http://localhost:8080/auth/login.html`
## Настройка БД
По умолчанию MariaDB поднимается с:
- БД: `auth_db`
- root пароль: `rootpass`
Схема создается автоматически из `../db/schema.sql`.
Пользователь `demo` добавляется автоматически из `seed.sql`.
### Тестовые данные
По умолчанию создается пользователь:
- логин: `demo`
- пароль: `demo12345`
- site_key: `localhost`
Если нужно изменить — отредактируйте `seed.sql` и пересоздайте контейнеры:
- `docker compose down -v`
- `docker compose up -d --build`
## Важно про конфиг PHP
В `auth/config.php` укажите параметры подключения:
- host: `db`
- port: `3306`
- user: `root`
- password: `rootpass`
- name: `auth_db`
Если хотите оставить `auth/config.php` для локальной сети, заведите отдельную копию
только для Docker и подмените ее через volume в `docker-compose.yml`.
## Остановка
- `docker compose down`

View File

@@ -0,0 +1,24 @@
version: "3.9"
services:
web:
build: .
ports:
- "8080:80"
volumes:
- ../auth:/var/www/html/auth:ro
depends_on:
- db
db:
image: mariadb:11
environment:
MARIADB_ROOT_PASSWORD: rootpass
MARIADB_DATABASE: auth_db
volumes:
- ../db/schema.sql:/docker-entrypoint-initdb.d/01-schema.sql:ro
- ./seed.sql:/docker-entrypoint-initdb.d/02-seed.sql:ro
- db_data:/var/lib/mysql
volumes:
db_data:

5
docker-pack/seed.sql Normal file
View File

@@ -0,0 +1,5 @@
INSERT INTO users (login, password_hash)
VALUES ('demo', '$2y$10$MyDhXOP.UZAHJcE1KWoQU.PJfxa5C82FePAuZYphCMaXya.Ylxlne');
INSERT INTO user_access (user_id, site_key)
VALUES (1, 'localhost');