2017-10-09 1 views
0

J'ai un Dockerfile comme ceci:Comment passer un fichier local en tant qu'argument avec docker run?

FROM python:3.6 
RUN mkdir /code 
COPY dist/python-0.1.0.tar.gz /code 
WORKDIR /code 
RUN pip install python-0.1.0.tar.gz 
ENTRYPOINT ["post"] 

La commande "post" fonctionne bien mon code sans argument. Ma question est comment puis-je obtenir le conteneur docker à l'exception d'un fichier local à l'exécution, car il peut changer.

Voici ma commande qui exécute le script, mais dit qu'il n'y a pas un tel fichier ou données répertoire/output.xml

docker run container data/output.xml 

J'ai aussi essayé sans succès

docker run -v data:/data containter /data/output.xml 

Merci pour toute aide!

+0

Pour ceux qui voient cela, la réponse était juste d'ajouter docker run -v $ (pwd)/data:/conteneur de données /data/output.xml –

Répondre

0

pour les volumes de docker, je pense que vous devez utiliser l'adresse absolue. L'utilisation est: $ docekr run -tid --name <name_you_want> -v <host_absolute_path>:<path_inside_docker> <image_id> <cmd_such_as_bash>