Impossibile creare l'immagine poiché richiede input

Aug 23 2020

Sto cercando di creare un'immagine che eseguirà il server ftp su centos. Il contenuto di Dockerfile è il seguente:

FROM centos
 
RUN \
  yum update -y && \
  yum install vsftpd -y 
 
EXPOSE 21
CMD vsftpd -DFOREGROUN

Sto correndo sotto il comando:

docker build -f webserver .

che mi chiede input come di seguito:

Please select the geographic area in which you live. Subsequent configuration
questions will narrow this down by presenting a list of cities, representing
the time zones in which they are located.
 
  1. Africa      4. Australia  7. Atlantic  10. Pacific  13. Etc
  2. America     5. Arctic     8. Europe    11. SystemV
  3. Antarctica  6. Asia       9. Indian    12. US
Geographic area: 9

una volta inserito 9 e premuto il pulsante Invio, si è bloccato nella stessa finestra. Potete per favore aiutarmi, come devo elaborare questo?

Risposte

3 Noname Aug 23 2020 at 21:04

Il dockerprocesso di compilazione non è interattivo. Devi trovare un modo per non chiedere nulla. Il modo per farlo è creare i file di configurazione necessari e posizionarli nelle posizioni corrette tramite il file Dockerfileprima di installare vsftpd. Le domande sono lì semplicemente per vsftpd per generare uno o alcuni file di configurazione per se stesso. Ne crei uno in anticipo e lo posizioni correttamente usando il copycomando before run yum install. Se vsftpd trova i file di configurazione validi, non chiederà più nulla.

Hakob Aug 27 2020 at 01:15

Il problema è un errore di battitura nel comando build:

finestra mobile build -f server web .

qual è il file del server web che stai utilizzando per quella build se lo script è descritto nel Dockerfile? A proposito, ho creato la tua immagine e non è apparso alcun menu interattivo, quindi costruiscilo))

docker build -t webserver .