Activer python virtualenv dans Dockerfile

J'ai un Dockerfile où je tente d'activer python virtualenv après quoi, il doit installer toutes les dépendances au sein de ce ministère. Cependant, tout est installé dans le monde. J'ai utilisé des approches différentes et non d'entre eux travaillaient. J'ai aussi ne pas faire d'erreurs. Où est-elle un problème?

1.
ENV PATH $PATH:env/bin

2.
ENV PATH $PATH:env/bin/activate

3.
RUN . env/bin/activate

J'ai également suivi un exemple d'un Dockerfile config pour le python-runtime image sur Google Cloud, qui est essentiellement la même chose que ci-dessus.

La définition de ces variables d'environnement sont les mêmes que l'exécution de la source /env/bin/activate.

ENV VIRTUAL_ENV /env

ENV PATH /env/bin:$PATH

De plus, ce qui ne ENV VIRTUAL_ENV /env signifie et comment est-il utilisé?

source ../bin/activate essayé ?
Êtes-vous à l'exécution de plusieurs applications python dans le même conteneur Docker?
Il n'est pas recommandé d'utiliser virtualenv dans un Dockerfile depuis que vous aviez idéalement, il suffit de l'installer à l'échelle mondiale en utilisant une seule application par conteneur pratique. Cependant, je suis heureux, je suis tombé sur ce parce que j'ai une unité de test de cas d'utilisation qui nécessite virtualenv dans un Dockerfile. Il peut sembler étrange, mais une partie de l'épreuve est de virtualenv intégration. Je vous remercie pour cette question.

OriginalL'auteur igsm | 2018-02-01