Wie starte ich wget im Ubuntu Docker Image?


79

Ich versuche, ein Debian-Paket wie folgt in einen Ubuntu-Container herunterzuladen:

sudo docker run ubuntu:14.04 wget https://downloads-packages.s3.amazonaws.com/ubuntu-14.04/gitlab_7.8.2-omnibus.1-1_amd64.deb

Ich bekomme

exec: "wget": executable file not found in $PATH

Ich habe wgetDocker bereits wie folgt installiert :

run ubuntu:14.04 apt-get install wget

Wie kann ich eine Datei herunterladen?

Antworten:


117

Sie müssen es zuerst installieren. Erstellen Sie ein neues Dockerfileund installieren Sie wget darin:

FROM ubuntu:14.04
RUN  apt-get update \
  && apt-get install -y wget \
  && rm -rf /var/lib/apt/lists/*

Erstellen Sie dann das Image:

docker build -t my-ubuntu .

Führen Sie es schließlich aus:

docker run my-ubuntu wget https://downloads-packages.s3.amazonaws.com/ubuntu-14.04/gitlab_7.8.2-omnibus.1-1_amd64.deb

12
@ Nachbar90 Jeder docker runBefehl wird in einem isolierten Container ausgeführt. Was auch immer Sie im ersten Container installiert haben, ist im zweiten Container nicht vorhanden. Sie sollten wahrscheinlich etwas mehr darüber lesen, was Container sind und wie sie funktionieren.
Thomas Orozco

1
Wie können Sie die Ergebnisdatei des letzten Laufs an Ihr lokales Dateisystem weiterleiten?
hhh

Es funktioniert gut, aber ich wollte nach der Paketversion fragen. Andernfalls werden die Docker-Flusen nicht passiert.
ishmam999

31

Ich hatte dieses Problem vor kurzem, wo apt install wgetnichts gefunden wird. Wie sich herausstellte, apt updatewurde nie gelaufen.

apt update
apt install wget

Nachdem wir dies mit einem Kollegen besprochen hatten, überlegten wir, dass dies apt updatewahrscheinlich nicht ausgeführt wird, um Zeit und Platz im Docker-Image zu sparen.


hatte Docker Ubuntu Container durch einfaches Ausführen von Docker Pulll Ubuntu und später in Bash installiert, bekam ein "apt nicht gefunden Problem". Das hat bei mir funktioniert. Danke
veritas

5

Wenn Sie den Ubuntu-Container direkt ohne eine lokale Docker-Datei ausführen, können Sie in den Container ssh und die Root-Steuerung aktivieren, indem Sie sudann eingebenapt-get install -y wget

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.