Eu tenho uma instância 16.04 no AWS EC2 que executa o Jenkins e cria imagens do Docker. Neste servidor, no Docker, apt
repos falham com 403 Forbidden
ao usar HTTP. O Dockerfile
é baseado em ubuntu:16.04
. A mensagem de erro completa é:
Step 6 : RUN apt-get -qq update && apt-get -y upgrade
---> Running in d68f58b74bbe
W: The repository 'http://security.ubuntu.com/ubuntu xenial-security Release' does not have a Release file.
W: The repository 'http://archive.ubuntu.com/ubuntu xenial Release' does not have a Release file.
W: The repository 'http://archive.ubuntu.com/ubuntu xenial-updates Release' does not have a Release file.
W: The repository 'http://archive.ubuntu.com/ubuntu xenial-backports Release' does not have a Release file.
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/xenial-security/universe/source/Sources 403 Forbidden [IP: 91.189.91.26 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-backports/restricted/binary-amd64/Packages 403 Forbidden [IP: 91.189.91.26 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial/universe/source/Sources 403 Forbidden [IP: 91.189.91.26 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-updates/universe/source/Sources 403 Forbidden [IP: 91.189.91.26 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.
ERROR: Service 'foo' failed to build: The command '/bin/sh -c apt-get -qq update && apt-get -y upgrade' returned a non-zero code: 100
Esta falha somente acontece dentro do Docker. E isso não acontece ao usar ftp://
para acessar os repositórios. Essa falha ocorre tanto no trabalho do Jenkins quanto ao tentar criar essas imagens a partir do sistema básico fora do Jenkins.
Eu preferiria não modificar meu Dockerfile
para substituir o arquivo apt
sources por uma versão usando FTP. Isso não acontece em nenhum outro lugar; essas imagens do Docker se baseiam em nossas outras instâncias do 16.04 EC2 sem problemas, assim como em outras instâncias que não são do Ubuntu.