2016-11-16 6 views
0

Dockerを使用しているDjangoアプリケーションはrpy2を依存関係としてインストールする必要があります。Dockerでrpy2をインストールするとRパスが見つかりません

Collecting rpy2==2.8.3 (from -r /requirements/base.txt (line 55)) 
    Downloading rpy2-2.8.3.tar.gz (186kB) 
    Complete output from command python setup.py egg_info: 
    Error: Tried to guess R's HOME but no command 'R' in the PATH. 

は、どのようにR・パスがあるドッカー内で指定することができます?私はR-ベースコンテナをインストールして、依存関係として指定しますがジャンゴの要件をインストールするとき、私は入れませんか

マイserver.ymlは次のようになりますジャンゴのため

version: '2' 
services: 

    r: 
    build: ./services/r 

    django: 
    build: 
     context: ./myproject/ 
     dockerfile: ./compose/django/Dockerfile 
    env_file: 
     - .env 
     - .env-server 
    environment: 
     - DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_USER} 
    depends_on: 
     - postgres 
     - r 
    command: /gunicorn.sh 
    volumes: 
     - ./myproject:/app 

Dockerfileは次のとおりです。

FROM python:2.7 
ENV PYTHONUNBUFFERED 1 

COPY ./requirements /requirements 

RUN pip install -r /requirements/production.txt \ 
    && pip install -r /requirements/test.txt \ 
    && groupadd -r django \ 
    && useradd -r -g django django 

COPY . /app 
RUN chown -R django /app 

COPY ./compose/django/gunicorn.sh /gunicorn.sh 
COPY ./compose/django/entrypoint.sh /entrypoint.sh 
RUN sed -i 's/\r//' /entrypoint.sh \ 
    && sed -i 's/\r//' /gunicorn.sh \ 
    && chmod +x /entrypoint.sh \ 
    && chown django /entrypoint.sh \ 
    && chmod +x /gunicorn.sh \ 
    && chown django /gunicorn.sh 

WORKDIR /app 

ENTRYPOINT ["/entrypoint.sh"] 

R用Dockerfileは次のとおりです。

FROM r-base 

答えて

0

それだけに簡単でしたdjangoコンテナの中にrをインストールします。したがって、rコンテナを削除し、djangoドッカーファイルを修正してこの行を追加すると、作業しました:

関連する問題