web-dev-qa-db-fra.com

Comment accéder au fichier local lors de la construction à partir de Dockerfile?

J'ai besoin hello.rpm lorsque je crée à partir de Dockerfile, mais ce fichier rpm n'est pas disponible en ligne.

En ce moment, je sers le fichier en activant un serveur Web temporaire, mais idéalement, je voudrais exécuter une commande build qui rend ce fichier local disponible à l'intérieur du conteneur.

Est-ce possible?


Ma commande de build:

docker build -t fredrik/helloworld:1.0 .

Mon Dockerfile:

FROM centos:6
RUN rpm -ivh hello.rpm
19
fredrik

Pourquoi ne pas COPIER le fichier à l'intérieur du conteneur avant d'exécuter RUN?

FROM centos:6
COPY hello.rpm /tmp/hello.rpm
RUN rpm -ivh /tmp/hello.rpm

Cela suppose que hello.rpm est à côté de votre Dockerfile lorsque vous le créez.

30
Nicolas

Sinon, si une connexion Internet n'est pas un facteur limitant pendant que vous travaillez:

  1. Téléchargez le fichier dans un cloud en tant que Dropbox
  2. Accédez à votre Docker Shell et wget https://www.cloudnameXYZ.com/filename
3
Eugenio