How to use an External Task Runner for Python in production-ready environment?

Hi everyone,

I’m trying to optimize my n8n setup (Self-hosted, Docker Compose) to use an External Task Runner for Python, but I’m struggling with the docker-compose configuration.

n8n_worker | Failed to start Python task runner in internal mode. because Python 3 is missing from this system. Launching a Python runner in internal mode is intended only for debugging and is not recommended for production. Users are encouraged to deploy in external mode. See: Task runners | n8n Docs

My Goal:

  • Eliminate the “Python 3 is missing” warning from the main container.
  • Use a separate container for Python executions.

I’ve read a bit of the documentation listed in the notice at this address: Task runners | n8n Docs

But I can’t get it to work.

Can someone tell me how to better fix the docker-compose.yml to get the External Task Runner for Python?

What image should I use in my docker-compose for the external runner?

Would someone kindly share the configuration or explain what I need to do?

Useful Information on my n8n setup

  • n8n Version: 2.8.3 (Alpine)
  • Architecture: 1 N8N Main, 1 N8N Worker (Queue mode with Redis/Postgres).
  • Operating system: Ubuntu 24.04LTS

hello @KolorWeb
The docs are good. What issue do you have?

Please, share the Docker Compose file (without passwords and sensitive parts)

Hello, and thanks for the reply!

Now is working! I missing some variables in the configuration file.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.