この docker ファイルから構築された Docker イメージがあります。 Docker イメージは、Ubuntu 14.04 である Vagrant VM を使用しており、すべて OSX 10.11.6 で実行しています。Microsoft SQL Server は aws-ec2 インスタンスにあります。私のプログラムは Python であるため、データベースに接続するために 2 つの Python ライブラリを試しましたが、それぞれが同じように失敗します。これまでに起こったことの概要は次のとおりです。
apk add freetds-dev
Microsoft SQL データベースとやり取りするには FreeTDS をインストールする必要があるためです。pip install pymssql
どちらも同じエラー メッセージでpip install pyobdc
失敗します。
{ bash-4.3# pip install pymssql
Collecting pymssql
Using cached pymssql-2.1.3.tar.gz
Complete output from command python setup.py egg_info:
setup.py: platform.system() => 'Linux'
Download error on https://pypi.python.org/simple/setuptools_git/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- Some packages may not be found!
Download error on https://pypi.python.org/simple/setuptools-git/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- Some packages may not be found!
Couldn't find index page for 'setuptools_git' (maybe misspelled?)
Download error on https://pypi.python.org/simple/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- Some packages may not be found!
No local packages or download links found for setuptools-git
setup.py: platform.architecture() => ('64bit', '')
setup.py: platform.linux_distribution() => ('', '', '')
setup.py: platform.libc_ver() => ('', '')
setup.py: Not using bundled FreeTDS
setup.py: include_dirs = []
setup.py: library_dirs = ['/usr/local/lib']
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-build-macbkK/pymssql/setup.py", line 477, in <module>
ext_modules = ext_modules(),
File "/usr/lib/python2.7/distutils/core.py", line 111, in setup
_setup_distribution = dist = klass(attrs)
File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 268, in __init__
self.fetch_build_eggs(attrs['setup_requires'])
File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 313, in fetch_build_eggs
replace_conflicting=True,
File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 846, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1091, in best_match
return self.obtain(req, installer)
File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1103, in obtain
return installer(requirement)
File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 380, in fetch_build_egg
return cmd.easy_install(req)
File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 633, in easy_install
raise DistutilsError(msg)
distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('setuptools-git')
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-macbkK/pymssql/
( と同じエラーpyodbc
です ) インストールしようとするとsetuptools-git
(エラー メッセージのように)、gcc
コンパイル エラーが発生します。
を試すpip install...
ことに加えて、SQLAlchemy ライブラリを Alpine Linux リポジトリから直接ダウンロードしましたがapk add --no-cache --repository http://dl-3.alpinelinux.org/alpine/edge/community/ py-sqlalchemy
、インストールがまだ失敗するか、Python ライブラリがまだ失敗します。
Alpine Linux と Microsoft SQL Server に関するドキュメントはほとんど見つかりませんでした。そのため、互換性がないという記述を見落としていないかどうか疑問に思っています。誰もこれをやろうとしたことがありますか?Python 経由での接続が提案されていない場合、シェル コマンド経由で接続することを検討しています。このためのベスト プラクティスを提案できる人はいますか?
ありがとうございました!