push
This commit is contained in:
@@ -14,11 +14,11 @@
|
||||
|
||||
| Путь | Содержимое |
|
||||
| ------------------------------------------- | ---------------------------------------- |
|
||||
| `examples/multi-service/docke-compose.yaml` | Описание всех сервисов, сетей, томов |
|
||||
| `examples/multi-service/.env.example` | Пример переменных окружения для Compose |
|
||||
| `examples/multi-service/web/` | Nginx + статика через `COPY` |
|
||||
| `examples/multi-service/api/` | Flask + Postgres + загрузка файлов в том |
|
||||
| `examples/multi-service/proxy/` | Входной nginx: `/` → web, `/api/` → api |
|
||||
| `docker/examples/multi-service/compose.yaml` | Описание всех сервисов, сетей, томов |
|
||||
| `docker/examples/multi-service/.env.example` | Пример переменных окружения для Compose |
|
||||
| `docker/examples/multi-service/web/` | Nginx + статика через `COPY` |
|
||||
| `docker/examples/multi-service/api/` | Flask + Postgres + загрузка файлов в том |
|
||||
| `docker/examples/multi-service/proxy/` | Входной nginx: `/` → web, `/api/` → api |
|
||||
|
||||
Скопируйте переменные окружения:
|
||||
|
||||
@@ -27,44 +27,26 @@ cd docker/examples/multi-service
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
|
||||
<img src="./assets/image_1777885724388.jpg" width="auto">
|
||||
|
||||
Запуск:
|
||||
```
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
**Скриншот:** вывод `docker compose up` — этапы build, Creating..., Started.
|
||||
<img src="./assets/image_1777885746375.jpg" width="auto">
|
||||
|
||||
<img src="./assets/compose_up_build_started.png" width="auto">
|
||||
<img src="./assets/image_1777885786226.jpg" width="auto">
|
||||
|
||||
**Скриншот:** `docker compose ps` — все сервисы `running` (или `healthy` где настроено).
|
||||
<img src="./assets/image_1777885816731.jpg" width="auto">
|
||||
|
||||
<img src="./assets/compose_ps_all_running.png" width="auto">
|
||||
Все сервисы подняты
|
||||
|
||||
Откройте в браузере `http://127.0.0.1:8080` (если в `.env` не меняли `HTTP_PORT`).
|
||||
Откройте в браузере адрес с портом из `.env` (по умолчанию `http://127.0.0.1:8080`). Главная страница — статика из сервиса **web**: мини-дашборд с индикаторами **прокси**, **web**, **API** и **PostgreSQL** (данные приходят с эндпоинта `/api/status` через прокси), блок **заметок** (чтение и создание через `/api/notes`) и простая загрузка файлов в том **api_uploads**. Всё работает в одной вкладке, без `curl` — гайд остаётся про Docker и Compose, а проверка стека — через интерфейс.
|
||||
|
||||
**Скриншот:** главная страница демо со ссылками на API.
|
||||
**Скриншот:** открытая главная страница с зелёными статусами и списком заметок.
|
||||
|
||||
<img src="./assets/compose_browser_home.png" width="auto">
|
||||
|
||||
Проверка API через прокси:
|
||||
|
||||
```
|
||||
curl -s http://127.0.0.1:8080/api/health | jq .
|
||||
curl -s http://127.0.0.1:8080/api/notes | jq .
|
||||
curl -s -X POST http://127.0.0.1:8080/api/notes \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{"body":"Первая заметка из curl"}' | jq .
|
||||
|
||||
echo demo > /tmp/upload-demo.txt
|
||||
curl -s -F "file=@/tmp/upload-demo.txt" http://127.0.0.1:8080/api/upload | jq .
|
||||
curl -s http://127.0.0.1:8080/api/uploads | jq .
|
||||
```
|
||||
|
||||
**Скриншот:** терминал с ответами JSON.
|
||||
|
||||
<img src="./assets/compose_curl_api_notes.png" width="auto">
|
||||
<img src="./assets/image_1777885916959.jpg" width="auto">
|
||||
|
||||
---
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 8.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 38 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
Reference in New Issue
Block a user