TODO: Add description
Configurando ambiente do Poetry:
$ poetry config virtualenvs.path .venv
$ poetry config virtualenvs.in-project trueClonando repositório:
$ git clone https://github.com/aejuniordev/waiwai-backend.gitInstalando dependências:
$ cd waiwai-backend
$ poetry install$ docker build -t aejunior/waiwai-backend:latest .
$ docker network create -d bridge api_proxy
$ docker network create -d bridge api_db_migration
$ docker exec -it <ID> sh
$ certbot --nginxBaseado no arquivo de configuração de exemplo (.env.sample) você deverá criar um arquivo de configuração .env próprio para o seu ambiente.
Veja um exemplo abaixo:
[environment]
ENVIRONMENT=dev # dev or prod
[socket-binding]
HOST=0.0.0.0 # Default: '127.0.0.1'
PORT=8080 # Default: 8000
[development]
RELOAD=1
[production]
WORKERS=1 # Default 1 for development
JWT_ALGORITHM= # Default: HS256
JWT_SECRET_KEY_ACCESS_TOKEN= # https://randomkeygen.com/
JWT_SECRET_KEY_REFRESH_TOKEN= # https://randomkeygen.com/
JWT_EXPIRATION_ACCESS_TOKEN= # Default: 30
JWT_EXPIRATION_REFRESH_TOKEN= # Default: 10080
[logging]
# LOG_CONFIG= # TODO
# NO_ACCESS_LOG= # TODO
LOG_LEVEL=info
[database]
DB_URL=postgresql+asyncpg://<user>:<password>@<host>/<database>Para subir a última versão do banco de dados basta executar o seguinte comando na raiz do projeto:
$ alembic upgrade headObs.: Necessário ter uma instância do banco de dados (PostgreSQL) em execução e configurado no Alembic.
Parar iniciar o projeto, basta executar o seguinte comando no seu terminal:
$ poetry run appSaída de execução:
INFO: Will watch for changes in these directories: ['/path/to/waiwai-backend/backend']
INFO: Uvicorn running on http://127.0.0.1:8080 (Press CTRL+C to quit)
INFO: Started reloader process [9999] using StatReload
INFO: Started server process [9998]
INFO: Waiting for application startup.
INFO: Application startup complete.
TODO: Add documentation
TODO: Add endpoints
Editar CRON tabs.
$ crontab -eIncluir comando para renovação:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
0 */12 * * * root certbot -q renew --nginx