web-dev-qa-db-ja.com

Ubuntu Dockerイメージ内でwgetを実行する方法は?

次のように、Ubuntuコンテナ内にDebianパッケージをダウンロードしようとしています。

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

私は得る

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

次のようにdockerでwgetを既にインストールしました。

run ubuntu:14.04 apt-get install wget

ファイルをダウンロードするにはどうすればよいですか?

53

最初にインストールする必要があります。新しいDockerfileを作成し、その中にwgetをインストールします。

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

次に、そのイメージをビルドします。

docker build -t my-ubuntu .

最後に、それを実行します:

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

最近、apt install wgetで何も見つからないこの問題が発生しました。結局、apt updateは実行されませんでした。

    apt update
    apt install wget

同僚とこれについて話し合った後、Dockerイメージの時間とスペースの両方を節約するために、apt updateが実行されない可能性が高いと思いました。

16
Lincoln

ローカルDockerfileなしでubuntuコンテナーを直接実行している場合は、コンテナーにsshし、suに続いてapt-get install -y wgetを入力してルートコントロールを有効にできます。

3
iksnae