mirror of
https://github.com/ryzij/URL-Shortener.git
synced 2026-07-14 03:56:58 +00:00
Добавил примеры
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
POSTGRES_USER=app
|
||||
POSTGRES_PASSWORD=app
|
||||
POSTGRES_DB=appdb
|
||||
DB_HOST=db
|
||||
@@ -1 +1,75 @@
|
||||
# URL Shortener
|
||||
|
||||
Простой API для создания коротких URL и сбора статистики по переходам
|
||||
|
||||
## Возможности
|
||||
|
||||
- Создание коротких ссылок
|
||||
- Редирект по короткому URL
|
||||
- Сбор статистики переходов
|
||||
- REST API
|
||||
- PostgreSQL в качестве базы данных
|
||||
- Swagger для демонстрации HTTP-запросов
|
||||
- Запуск через Docker Compose
|
||||
|
||||
## Установка
|
||||
|
||||
```bash
|
||||
git clone https://github.com/ryzij/URL-Shortener.git url-short
|
||||
cd url-short
|
||||
```
|
||||
|
||||
### Настройка окружения
|
||||
|
||||
```bash
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
Пример `.env`:
|
||||
```
|
||||
# Укажите свои значения
|
||||
POSTGRES_USER=app
|
||||
POSTGRES_PASSWORD=app
|
||||
POSTGRES_DB=appdb
|
||||
```
|
||||
|
||||
### Настройка `docker-compose.yml`
|
||||
|
||||
```bash
|
||||
cp docker-compose.example.yml docker-compose.yml
|
||||
```
|
||||
|
||||
Пример `docker-compose.yml`:
|
||||
```yml
|
||||
services:
|
||||
api:
|
||||
build: .
|
||||
ports:
|
||||
- "5000:8080"
|
||||
depends_on:
|
||||
- db
|
||||
environment:
|
||||
ConnectionStrings__DefaultConnection: Host=db;Database=${POSTGRES_DB};Username=${POSTGRES_USER};Password=${POSTGRES_PASSWORD}
|
||||
|
||||
db:
|
||||
image: postgres:17
|
||||
restart: always
|
||||
environment:
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
volumes:
|
||||
- pg_data:/var/lib/postgresql/data
|
||||
|
||||
volumes:
|
||||
pg_data:
|
||||
```
|
||||
|
||||
## Запуск
|
||||
|
||||
```bash
|
||||
docker compose up --build -d
|
||||
```
|
||||
|
||||
После запуска Swagger будет доступен по адресу:
|
||||
http://localhost:5000/swagger
|
||||
|
||||
@@ -6,10 +6,10 @@ services:
|
||||
depends_on:
|
||||
- db
|
||||
environment:
|
||||
ConnectionStrings__DefaultConnection: Host=${DB_HOST};Database=${POSTGRES_DB};Username=${POSTGRES_USER};Password=${POSTGRES_PASSWORD}
|
||||
ConnectionStrings__DefaultConnection: Host=db;Database=${POSTGRES_DB};Username=${POSTGRES_USER};Password=${POSTGRES_PASSWORD}
|
||||
|
||||
db:
|
||||
image: postgres:16
|
||||
image: postgres:17
|
||||
restart: always
|
||||
environment:
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
Reference in New Issue
Block a user