Použil jsem Docker k nastavení kontejneru Ubuntu 18.04 a poté jsem se pokusil nainstalovat soubor .deb s chybou, jak je uvedeno níže.
[email protected]:/sc5xx_dev/lib/toolchain# dpkg -i adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb
(Reading database ... 52942 files and directories currently installed.)
Preparing to unpack adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb ...
dpkg: error processing archive adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb (--install):
new adi-cces-2.7.0:i386 package pre-installation script subprocess returned error exit status 2
Errors were encountered while processing:
adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb
Výstup sudo apt install ./adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb
:
dpkg:archiv zpracování chyb /sc5xx_dev/lib/toolchain/adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb (–rozbalit):
nový dílčí proces skriptu před instalací balíčku adi-cces-2.7.0:i386 vrácená chyba stav ukončení 2
Při zpracování byly zjištěny chyby:/sc5xx_dev/lib/toolchain/adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb E:Podproces /usr/bin/dpkg vrátil kód chyby (1)
Přijatá odpověď:
Zjistil jsem, jak vyřešit tuto otázku. Je to způsobeno „ENV DEBIAN_FRONTEND=noninteractive
” v Dockerfile
.
Chcete-li nainstalovat ubuntu-18.04, měli bychom nastavit balíček v režimu neinteraktivní
Chcete-li nainstalovat adi_xxx.deb
balíčku bychom měli nastavit událost v režimu interaktivní.
Takže správný Dockerfile:
RUN apt-get -y update
RUN DEBIAN_FRONTEND=noninteractive apt-get -y -q install net-tools build-essential minicom tftpd-hpa git-all subversion openssh-server ncurses-dev php gawk g++ m4 libncurses5-dev texinfo flex bison php-cli vim php-xml python-setuptools python-dev unzip rsync cpio bc lib32z1 lib32stdc++6 lib32ncurses5
Nesprávný soubor Dockerfile:
EVN DEBIAN_FRONTEND=noninteractive
RUN apt-get -y update
RUN apt-get -y -q install net-tools build-essential minicom tftpd-hpa git-all subversion openssh-server ncurses-dev php gawk g++ m4 libncurses5-dev texinfo flex bison php-cli vim php-xml python-setuptools python-dev unzip rsync cpio bc lib32z1 lib32stdc++6 lib32ncurses5
Poznámka:
Nepoužívejte příkaz “ENV DEBIAN_FRONTEND=noninteractive
” při konfiguraci Dockerfile
toto rozhodně není rozumné výchozí nastavení a nastavení přes ENV
měli byste být aktivně odrazováni, viz https://github.com/moby/moby/issues/4032