2017-04-12 12 views
0

私はまったく新しいドッカーユーザーです。私はエラーで多くの時間を費やしていますが、Dockerfileは本当に短くて簡単ですが、私はこれを解決することができません。Dockerファイルを簡単にuntarする:ファイルが見つかりません

私はtarファイルをダウンロードしようとしている、と。ここ

にそれをアーカイブ解除は、私のDockerfile(各試行は、同じ時間として、私は簡略化のためにそれらを一緒に入れDockerfileではありませんでした)である

FROM ubuntu:latest 

# 1st try 
ADD https://download.gnome.org/sources/glib/2.52/glib-2.52.1.tar.xz /tmp/ 
RUN ls -lah /tmp/glib-2.52.1.tar.xz 
ADD /tmp/glib-2.52.1.tar.xz /tmp 

# 2nd try 
ADD https://download.gnome.org/sources/glib/2.52/glib-2.52.1.tar.xz /tmp/ 
RUN ls -lah /tmp/glib-2.52.1.tar.xz 
RUN tar -C /tmp/ -xf /tmp/glib-2.52.1.tar.xz 

# 3rd try 
WORKDIR /tmp/ 
RUN wget https://download.gnome.org/sources/glib/2.52/glib-2.52.1.tar.xz 
RUN ls -lah glib-2.52.1.tar.xz 
RUN tar -xf glib-2.52.1.tar.xz 

# 4th try 
RUN wget https://download.gnome.org/sources/glib/2.52/glib-2.52.1.tar.xz -O /tmp/glib-2.52.1.tar.xz 
RUN ls -lah /tmp/glib-2.52.1.tar.xz 
ADD /tmp/glib-2.52.1.tar.xz /tmp 

# 5th try 
RUN wget https://download.gnome.org/sources/glib/2.52/glib-2.52.1.tar.xz -O /tmp/glib-2.52.1.tar.xz 
RUN ls -lah /tmp/glib-2.52.1.tar.xz 
RUN tar -C /tmp/ -xf /tmp/glib-2.52.1.tar.xz 

私は、このファイルをダウンロードして解凍する可能性があるすべてのものを試しました。

エラーは、最後のステップコマンド(アーカイブ解除、ステップ4)でのみ発生しました。

私は基本的に自分のコンピュータ上の第5回試してみました、それが動作します:私はタールを使用する場合、ここで

$> wget https://download.gnome.org/sources/glib/2.52/glib-2.52.1.tar.xz -O /tmp/glib-2.52.1.tar.xz 
$> tar -C /tmp/ -xf /tmp/glib-2.52.1.tar.xz 
$> ls /tmp/glib* 
glib-2.52.1 glib-2.52.1.tar.xz 

が出力されます:私はADDを使用する場合、ここで

$> sudo docker build -t gtk --no-cache . 
Sending build context to Docker daemon 3.584kB 
Step 1/5 : FROM ubuntu:latest 
---> 0ef2e08ed3fa 
Step 2/5 : ADD https://download.gnome.org/sources/glib/2.52/glib-2.52.1.tar.xz /tmp/ 
Downloading [==================================================>] 7.676MB/7.676MB 
---> caa91f90fdca 
Removing intermediate container 2952ba563006 
Step 3/5 : RUN ls -lah /tmp/glib-2.52.1.tar.xz 
---> Running in 9570826c1437 
-rw------- 1 root root 7.4M Apr 8 06:24 /tmp/glib-2.52.1.tar.xz 
---> 4335ecb50e2a 
Removing intermediate container 9570826c1437 
Step 4/5 : RUN tar -C /tmp/ -xf /tmp/glib-2.52.1.tar.xz 
---> Running in e5a847dd0427 
tar (child): xz: Cannot exec: No such file or directory 
tar (child): Error is not recoverable: exiting now 
tar: Child returned status 2 
tar: Error is not recoverable: exiting now 
The command '/bin/sh -c tar -C /tmp/ -xf /tmp/glib-2.52.1.tar.xz' returned a non-zero code: 2 

が出力されます。

[...] # same output 

Step 4/5 : ADD /tmp/glib-2.52.1.tar.xz /tmp/ 
lstat tmp/glib-2.52.1.tar.xz: no such file or directory 

ありがとうございました!

+1

をDockerfileをデバッグするための良い方法は、 'ドッキングウィンドウの実行-it MYIMAGE bash'を使用して、端末で' RUN'命令を繰り返してみることです。 –

答えて

4

常にヒントを慎重に出力を読む:あなたがXZアーカイブを処理するために必要とされる画像でxz-utilsパッケージが欠落している

tar (child): xz: Cannot exec: No such file or directory 

。試してみてください:

RUN apt-get install xz-utils && tar -C /tmp/ -xf /tmp/glib-2.52.1.tar.xz 
関連する問題