Prova dockerfeed . Usa la funzionalità docker per creare un contesto tramite stdin. Ho scritto la sceneggiatura per affrontare esattamente il tuo problema che stavo affrontando io stesso.
Per sostituire un Dockerfile con uno diverso lo fai in questo modo:
dockerfeed -d Dockerfile.app . | docker build -t deepak/ruby -
E voilà. Dockerfeed sta facendo la stessa cosa di docker build. Comprende la sorgente con il suo Dockerfile ma ti consente di sostituire il vecchio Dockerfile con quello desiderato. Nessun file viene creato nel processo, nessuna origine viene modificata. L'archivio tar generato viene reindirizzato in docker, che a sua volta lo invia al daemon docker.
Aggiornamento:
questa era una risposta valida ai vecchi tempi, quando non c'erano -finterruttori disponibili. Con la versione 1.5 di docker questa opzione è stata introdotta. Ora puoi creare un Dockerfile diverso come questo:
docker build -f other-Dockerfile .