Skip to content

Add documentation for Azure Linux installation #561

@jonmclean

Description

@jonmclean

Please add mssql-python installation instructions for Azure Linux [https://github.com/microsoft/AzureLinux] Azure Linux is Microsoft's minimal Linux distribution and is very handy for building Docker images that are deployed to Azure environments.

I tried to install required prerequisites in my Dockerfile using this code:

# krb5-libs and libtool-ltdl are mssql-python native deps (https://github.com/microsoft/mssql-python#installation)
RUN tdnf distro-sync -y && \
    tdnf install -y \
    ca-certificates \
    git \
    libtool \
    krb5-libs \
    libtool-ltdl \
    python3 \
    shadow-utils \
    sudo \
    util-linux && \
    tdnf clean all

After pip installing mssql_python in the Docker container and trying to run I get this error message:

  File "/opt/venv/lib/python3.12/site-packages/graphragzero/api/executors/retrieval.py", line 232, in _run
    if storage.has_dimensionality_reducer():
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/venv/lib/python3.12/site-packages/graphragzero/utils/time.py", line 21, in _wrapper
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "/opt/venv/lib/python3.12/site-packages/graphragzero/example_integrations/azure_sql_db_storage.py", line 982, in has_dimensionality_reducer
    with connect(self._context.connection_string) as conn, conn.cursor() as cursor:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/venv/lib/python3.12/site-packages/mssql_python/db_connection.py", line 55, in connect
    conn = Connection(
           ^^^^^^^^^^^
  File "/opt/venv/lib/python3.12/site-packages/mssql_python/connection.py", line 332, in __init__
    self._conn = ddbc_bindings.Connection(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: Failed to allocate environment handle

This looks like a pybind error to me so I assume there are more dependencies that need to be installed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    triage neededFor new issues, not triaged yet.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions