2017-09-19 4 views
0

Dockerコンテナ内で、私の会社のために設計されたpythonライブラリテストスイートを実行する必要があり、Redis Connectorのテストスイートでは、 locaclhost:6379 redis serverが拒否されました。Redis pythonはDocker内でローカルサーバーを作成できません

redis.exceptions.ConnectionError: Error 111 connecting to localhost:6379. Connection refused.

noseとオープンな環境でのtest_redis.pyパスが、(ドッカー以内)継続的インテグレーションに失敗しました。

Dockerはすべてlocalhostサービスをブロックしていますか、間違ったアプローチを使用していますか?

セットアップ

Ubuntu 17.04

Docker version 1.12.6, build 78d1802

Dockerfile:

Makefileのコマンドを構築する使用
FROM continuumio/miniconda3:4.3.14 

MAINTAINER ... <[email protected]> 

WORKDIR /app 

RUN which conda && which python && which pip && apt update && apt install -y build-essential libblas-dev liblapack-dev libatlas-base-dev gfortran 
RUN conda install -y numpy && conda install -y scikit-learn && conda install -y scipy 
RUN apt update && apt install -y libmysqlclient-dev 
COPY . /app/maids 
RUN cd /app/maids/ && pip install -e . 

test_docker_light_py3: #build_datascience_base3 
    docker run -e GCS_BUCKET=${GCS_BUCKET} -e GCS_BUCKET_TEST=${GCS_BUCKET_TEST} -e TEST_DATASET=${TEST_DATASET} -e TEST_DATASET_2=${TEST_DATASET_2} -e DOC_SSH_HOST=${DOC_SSH_HOST} -e DOC_SSH_PATH=${DOC_SSH_PATH} -v $(shell pwd):/app -i -t "${LOCAL_TEST_IMAGE3}" /bin/bash -c "python --version ; pip freeze ; python -m 'nose' -a '!slow' --nologcapture --nocapture --with-coverage --cover-package=maids --with-timer --timer-top-n 10 tests/*.py" 

答えて

0

問題が最後に修正するためにかなり簡単でした。実際、ドッカーの画像にはredis-serverツールがなく、何も提供していませんでした:6379。修正は私のテストスイートでredis-pyのモックを使用することでした。

関連する問題