Quando eu tento
apt-get install -y tzdata
a opção de linha de comando para escolher o fuso horário é exibida. Estou tentando usar isso em um script para fazer alguma configuração, como posso fazer o apt-get rodar sem a entrada do usuário?
Eu sei reconfigurar o tzdata que posso fazer
echo "America/New_York" > /etc/timezone
dpkg-reconfigure -f noninteractive tzdata
Mas, ao instalar, preciso que ele execute totalmente, mesmo que não defina o fuso horário correto, sempre posso reconfigurá-lo.
eu tentei
echo 5 | apt-get install -y tzdata
mas não está funcionando como esperado.
bash
ubuntu
dockerfile
apt-get
PYA
fonte
fonte
DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata
ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
etapa anteriorDEBIAN_FRONTEND=noninteractive apt-get install -y tzdata
foi a única maneira de fazer com que isso fosse instalado sem um prompt.Se alguém quiser alcançá-lo
Dockerfile
, use como abaixo.fonte
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends ...
ADEBIAN_FRONTEND
variável deve ser definida para ainstall
parte. Não funciona se definido antes de&&
para aupdate
parte.Todo o crédito por isso deve ir para @PYA, mas o pedido certo deve ser:
ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime export DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata dpkg-reconfigure --frontend noninteractive tzdata
fonte
Recentemente, encontrei a seguinte solução em um Dockerfile que cria a biblioteca Cingulata FHE:
Basicamente, ele usa a API fornecida por ipapi.co para recuperar as informações de fuso horário. Isso configura automaticamente o fuso horário de forma adequada em vez de pular a caixa de diálogo e usar o padrão (UTC).
fonte
Aqui está como eu fiz:
echo 1 > input.txt echo 1 >> input.txt apt-get install -y tzdata < input.txt ln -fs /usr/share/zoneinfo/America/Los_Angeles /etc/localtime echo America/Los_Angeles > /etc/timezone
As duas primeiras declarações de eco criam um arquivo de texto que contém os números de seleção para o menu de área geográfica e o menu de cidade / região. Este arquivo é então usado para fornecer entrada para o comando apt-get install. O pacote tzdata será instalado sem solicitar nenhuma entrada do usuário. O fuso horário será definido como África / Abidjan como se você inserisse 1 e 1 em resposta aos prompts que normalmente receberia. Em seguida, altero o fuso horário para o que desejo com os dois últimos comandos.
Em vez de 1 e 1, você poderia usar os números reais para a área geográfica e cidade / região que deseja, mas parece-me que esses números podem mudar.
fonte