Приложение должно принимать оригинальный URL и создавать на основе него сокращенный.
В качестве базы данных необходимо привести две реализации:
- PostgreSql
- самостоятельно реализованный пакет для хранения ссылок в памяти приложения
Для изменения режима запуска необходимо изменить docker-compose.yaml файл
Запуск приложения с базой данных Postgres
mainservice:
build: .
container_name: url_shortener
ports:
- "8080:8080"
command: ["./output", "-in-memory=false"]
depends_on:
- db1
Запуск приложения с in-memory базой данных
mainservice:
build: .
container_name: url_shortener
ports:
- "8080:8080"
command: ["./output", "-in-memory=true"]
depends_on:
- db1
Входные данные
{
"original_url":"https://ya.ru/?npr=1\u0026utm_referrer=https%3A%2F%2Fyandex.ru%2F\u0026ysclid=m7s5w6kifw169384164"
}
Выходные данные
{
"shortened_url":"http://<IP_ADDRESS>:8080/Ab_Cgf_edB"
}
Запуск приложения
make start
Остановка всех контейнеров приложения
make stop
Применить миграцию
make migrate-up
Откатить миграцию
make migrate-down