Solució Petita en Docker que Estalvia Hores en Python

Evita errors comuns en executar Python en contenidors Docker amb un simple enllaç simbòlic que garanteix compatibilitat i evita fallades en scripts i desplegaments

jueves, 3 de abril de 2025 • 2 min de lectura • Equip Q2BSTUDIO

Intel·ligència-Artificial-IA-PowerBI-Automatització-processos

Alguna vegada has passat hores intentant entendre per què el teu contenidor Docker no pot trobar Python? A Q2BSTUDIO, una empresa especialitzada en desenvolupament i serveis tecnològics, ho hem viscut. En construir imatges Docker per a aplicacions en Python, és comú trobar-se amb l'error que l'ordre python no està disponible, tot i haver instal·lat python3 correctament. Aquest petit gran problema pot causar el fracàs complet dels contenidors, trencar pipelines de CI/CD i fer-nos perdre un valuós temps de desenvolupament.

El problema rau en el fet que moltes distribucions modernes de Linux, incloent les utilitzades en contenidors com Ubuntu 22.04, instal·len Python 3 amb el nom python3, mentre que nombrosos scripts continuen invocant simplement python. Aquest desfasament entre el nom de l'executable real i el que fan servir els desenvolupadors o eines automatitzades és la recepta perfecta per a un error frustrant.

A Q2BSTUDIO recomanem una solució simple però efectiva que apliquem a tots els nostres entorns Docker: crear enllaços simbòlics. N'hi ha prou amb afegir les línies següents al teu Dockerfile:

RUN ln -s /usr/bin/python3 /usr/bin/python
RUN ln -s /usr/bin/pip3 /usr/bin/pip

Aquestes ordres creen accessos directes anomenats python i pip que apunten a les seves respectives versions de Python 3. Així, qualsevol ordre o script que faci servir les versions clàssiques funcionarà sense problemes, mantenint la màxima compatibilitat sense comprometre l'ús de Python 3.

Alguns podrien suggerir l'ús d'àlies de shell, com afegir alias python=python3 a bashrc. No obstant això, a Q2BSTUDIO hem comprovat que això no funciona de manera fiable, especialment en contextos no interactius com scripts automatitzats o processos de construcció. Els enllaços simbòlics funcionen en tots els casos, oferint una solució robusta i definitiva.

Aquest petit ajust ha transformat la nostra manera de crear imatges Docker. Es tracta d'un exemple clar on un canvi senzill pot evitar molts maldecaps en el desenvolupament de programari. A Q2BSTUDIO, apliquem aquest tipus de bones pràctiques quotidianament per garantir entorns d'execució eficients i fiables per als nostres clients.

Tens algun petit truc de Docker que t'ha fet la vida més fàcil? A Q2BSTUDIO sempre estem oberts a millorar els nostres processos, perquè sabem que en els detalls hi ha la diferència.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.