I encountered the following error when deploying the application to a Docker container:
812fb1973688:/usr/src/app# python
Python 3.13.1 (main, Dec 9 2024, 20:39:36) [GCC 14.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import openziti
Traceback (most recent call last):
File "<python-input-0>", line 1, in <module>
import openziti
File "/usr/local/lib/python3.13/site-packages/openziti/__init__.py", line 17, in <module>
from . import _version, context, decor, zitilib, zitisock
File "/usr/local/lib/python3.13/site-packages/openziti/context.py", line 18, in <module>
from . import zitilib, zitisock
File "/usr/local/lib/python3.13/site-packages/openziti/zitilib.py", line 36, in <module>
ziti = ctypes.CDLL(zitilib_path)
File "/usr/local/lib/python3.13/ctypes/__init__.py", line 390, in __init__
self._handle = _dlopen(self._name, mode)
~~~~~~~^^^^^^^^^^^^^^^^^^
OSError: Error relocating /usr/local/lib/python3.13/site-packages/openziti/lib/libziti.so: gnu_get_libc_version: symbol not found
After investigating, I found that Alpine uses musl
instead of glibc
. However, even after installing glibc
, this error still persists. Is there a way to make it work in an Alpine container? Although I tested it in a python:3.14.0a3-slim-bullseye
container and everything worked fine, we still prefer to use Alpine for this task. Thank you!