Build the container:
docker-compose build
Up the container:
docker-compose up
Setup your database by creating your first revision, you may need to add some missing imports:
docker-compose exec app sh
alembic revision --autogenerate -m "first revision"
Then apply it:
docker-compose exec app sh
alembic upgrade head
The container is ready at http://localhost
- ALLOWED_HOSTS
- DATABASE_URL
- DEBUG
- SECRET_KEY
- EMAIL_HOST
- EMAIL_PORT
- EMAIL_DEFAULT_FROM_ADDRESS
- EMAIL_DEFAULT_FROM_NAME
- EMAIL_USERNAME
- EMAIL_PASSWORD
- AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY
- AWS_BUCKET
- AWS_REGION
- SENTRY_DSN
Sorts imports, removes unused variables, max line length etc
docker-compose exec app ./scripts/lint
Run tests and coverage
docker-compose exec app ./scripts/test
docker-compose exec app python
The following will just paste into the python shell to save you copying each line.
from app import db
from starlette_core.database import Session
from starlette_auth.tables import Scope, User
scope = Scope(code="admin", description="Full administrators access")
user = User(email='admin@example.com', first_name='Admin', last_name='User')
user.set_password('password')
user.scopes.append(scope)
session = Session()
session.add_all([scope, user])
session.commit()
session.close()
npm install:
npm install
build css:
npm run watch-css