2019年5月6日月曜日

Dockerでpython3.7とpandasとpsycopg2がインストールされたコンテナを作成する

以下のコマンドとDockerfileを使用してpandasとpsycopg2がインストールされたイメージを作成する事ができます。
docker build -t pandas-pg:1.0 .

Dockerfile

FROM python:3.7-alpine3.9
RUN apk --no-cache add libstdc++ \
    postgresql-dev \
  && apk --no-cache --virtual pydeps add gcc \
    g++ \
    python3-dev \
    musl-dev \
    cython \
  && pip install pandas \
  && pip install psycopg2 \
  && apk del --purge pydeps
CMD ["/bin/sh"]

イメージを作成した後、以下のコマンドとサンプルコードでPostgreSQLに接続確認を行うことができます。
docker run -v `pwd`/test.py:/tmp/test.py  -it pandas-pg:1.0

test.py
import pandas as pd
import psycopg2

conn = psycopg2.connect(host='dbserver', port=5432, database='testdb', user='postgres', password='postgres')
result = pd.read_sql(sql="select current_user, version() as ver;", con=conn)
print(result)

コンテナ内でサンプルコード実行
python3 /tmp/test.py


○関連情報
・psycopg2に関する他の記事はこちらを参照してください。

0 件のコメント:

コメントを投稿