git clone https://github.com/fourhtyoz/SberAudioPlayer.git
cd SberAudioPlayer
docker-compose up --build
После запуска всех сервисов интерфейс доступен по адресу: http://localhost:3000
Сервисы логируют информацию в консоли и в docker logs.
git clone https://github.com/fourhtyoz/SberAudioPlayer.git
cd SberAudioPlayer
virtualenv venv
source venv/bin/activate
Для удобства все dependencies собраны в один requirements.txt
pip install -r requirements.txt
docker pull postgres:17
docker run -d \
--name db \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=123456 \
-e POSTGRES_DB=postgres \
-p 5432:5432 \
-v postgres_data:/var/lib/postgresql/data \
postgres:1`
cd backend
export ENV_LOCAL=1 && fastapi dev main.py
cd frontend
npm install
npm run start
cd player_service
export ENV_LOCAL=1 && fastapi dev main.py --port 8001
cd sounds_execution_service
python main.py
Есть тесты GitHub Workflow
, которые запускаются при пуше в main
: тестируются React компоненты с помощью jest
и player_service
с помощью pytest
.
Файлы загружаются в /tmp/uploads
.
В сервисе sounds_execution_service
стоит time.sleep(5)
для имитации воспроизведения звука.
На фронте воспроизведение звука отображается при помощи анимации.
При запуске для разработки нужно проставить ENV_LOCAL=1
При запуске тестов проставляется GITHUB_CICD=1
При запуске через docker-compose эти переменные не используются.