Я пытаюсь заставить приложение Windows работать в док-контейнере Ubuntu.При установке wine32 я получаю следующие ошибки (я на ПК с Windows 10):
E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/libx/libxcb/libxcb1_1.13-2~ubuntu18.04_amd64.deb Undetermined Error [IP: 91.189.88.149 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/libi/libieee1284/libieee1284-3_0.2.11-13_i386.deb Undetermined Error [IP: 91.189.88.149 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
Я уже опробовал несколько исправлений и (вот где это действительно вызывает головную боль) некоторые из них на самом делеУстранена проблема, но затем она снова появилась:
- Прежде всего, я перешел по ссылкам в сообщениях об ошибках и убедился, что они существуют
- Я попытался исправить ошибки, предложенные в сообщении об ошибке.а также флаг --no-cache, о котором я читал, но оба не помогли.
- Я использовал флаг --network = host, который исправил проблему для одной сборки, но потом вернулся
- Я добавил DNS-сервер своей компании в deamon.json, который исправил проблему для другого запуска, но затем снова вернулся
Редактировать : Помещение apt-get upgrade в dockerfile исправило его для еще одного одиночного запуска.В этом одном запуске казалось, что он извлекает только 201 пакет вместо обычных 230, что было удачно, поскольку 202 является первым, который обычно дает сбой.
Dockerfile:
FROM ubuntu
WORKDIR /app
COPY . ./
RUN dpkg --add-architecture i386
RUN apt-get update && apt-get -y upgrade
RUN apt-get update && apt-get -y install curl
RUN apt-get update && apt-get -y install wine32
RUN curl -sL https://deb.nodesource.com/setup_12.x | bash -
RUN apt-get update && apt-get -y install nodejs
RUN apt-get update && apt-get -y install p7zip-full
RUN npm install -g innosetup-compiler
RUN 7z x Debug.7z -oinput
RUN 7z x dist.7z -oinput
RUN innosetup-compiler Setup.iss
Команда:
docker build --network=host --no-cache -t setup:linux .