This content originally appeared on DEV Community and was authored by whchi
The key is running only 1 worker when start uvicorn
Content
For local Python app development, use a Docker container for non-application services like databases, Redis, etc. If all of your services are running in containers, you SHOULD use remote debug.
If all of your services are run in container you SHOULD use remote debug
0. Dockerfile
Here, I will use docker-compose as example
- docker-compose.debug.yml
version: "3.8"
services:
pgsql:
image: postgres:13
restart: unless-stopped
environment:
- POSTGRES_HOST_AUTH_METHOD=trust
- POSTGRES_USER=root
- POSTGRES_PASSWORD=
- POSTGRES_DB=postgres
volumes:
- postgres:/var/lib/postgresql/data
ports:
- '5432:5432'
privileged: true
volumes:
postgres:
1. Setup Run/Debug configurations
It's located in the top-right corner.
2. Setup local running configuration
Choose "FastAPI" for the running configuration.
remember to set
--workers=1
3. Setup container running configuration
Choose Docker Compose for your configuration.
4. Add local configuration
Under "Before launch" settings, add your local running configuration.
5. Start debugger as a happy debugger
This content originally appeared on DEV Community and was authored by whchi

whchi | Sciencx (2023-06-03T09:24:03+00:00) Setup FastAPI Debugger in PyCharm With Docker. Retrieved from https://www.scien.cx/2023/06/03/setup-fastapi-debugger-in-pycharm-with-docker/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.