热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

解压缩最简单的Dockerfile:找不到文件

如何解决《解压缩最简单的Dockerfile:找不到文件》经验,为你挑选了1个好方法。

我是一个新的docker用户.我花了很多时间在一个错误上,Dockerfile非常简短,但我无法解决这个问题.

我正在尝试下载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

我尝试了所有可能的事情,使这个文件beign下载并取消归档.

仅在最后一步命令(unarchive,步骤4)上发生错误.

我基本上尝试了第五次尝试在我的电脑上运行:

$> 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

这是我使用tar时的输出:

$> 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

这是我使用ADD时的输出:

[...] # 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> Erik Dannenb..:

请务必仔细阅读输出以获取提示:

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

您缺少xz-utils处理xz存档所需的映像中的包.尝试:

RUN apt-get install xz-utils && tar -C /tmp/ -xf /tmp/glib-2.52.1.tar.xz


推荐阅读
author-avatar
whiston潘_931
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有