Wget在Dockerfile中,文件在容器中消失
在Docker文件中,我使用wget下载图像中的文件。但是当我在docker compose文件中使用此图像时,容器不包含这些文件Wget在Dockerfile中,文件在容器中消失,docker,docker-compose,Docker,Docker Compose,在Docker文件中,我使用wget下载图像中的文件。但是当我在docker compose文件中使用此图像时,容器不包含这些文件 FROM debian:8 RUN apt-get update && apt-get install -y wget && rm -rf /var/lib/apt/lists/* RUN mkdir -p /blast && cd /blast RUN wget ftp://ft
FROM debian:8
RUN apt-get update && apt-get install -y wget && rm -rf /var/lib/apt/lists/*
RUN mkdir -p /blast && cd /blast
RUN wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.6.0+-x64-linux.tar.gz
RUN tar zxvpf ncbi-blast-2.6.0+-x64-linux.tar.gz && rm ncbi-blast-2.6.0+-x64-linux.tar.gz
RUN export PATH=$PATH:/blast/ncbi-blast-2.6.0+/bin
#&& export BLASTDB=/blast/blastdb
CMD ["sleep", "infinity"]
在容器中,我有/blast文件夹,但没有文件。。。有人知道我怎么做wget和保存文件吗?为什么它们会消失
编辑
码头工人历史
IMAGE CREATED CREATED BY SIZE COMMENT
13361cc1dda8 9 minutes ago /bin/sh -c #(nop) CMD ["sleep" "infinity"] 0 B
748afb9b0a0a 9 minutes ago /bin/sh -c #(nop) WORKDIR /blast 0 B
6eb2b58af7d4 9 minutes ago /bin/sh -c export PATH=$PATH:/blast/ncbi-b... 0 B
1331a22dcf67 10 minutes ago /bin/sh -c wget ftp://ftp.ncbi.nlm.nih.gov... 675 MB
83d2844843e5 35 minutes ago /bin/sh -c mkdir -p /blast && cd /blast 0 B
6b0b6a13ae47 41 minutes ago /bin/sh -c apt-get update && apt-get insta... 41.2 MB
054abe38b1e6 12 hours ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0 B
<missing> 12 hours ago /bin/sh -c #(nop) ADD file:712c48086043553... 123 MB
将你的跑步分组,在一次跑步中完成wget和tar,比如
运行wgetftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/最新/ncbi-blast-2.6.0+-x64-linux.tar.gz\
&&tar zxvpf ncbi-blast-2.6.0+-x64-linux.tar.gz和rm ncbi-blast-2.6.0+-x64-linux.tar.gz
请参阅编写Dockerfile的最佳实践
在Dockerfile中使用ENV而不是export
Thx,我会按照最佳实践来做,但我的文件总是消失:/during
docker build
你看到tar工作正常吗?你能把你的图片上传到docker历史吗?然后,在tar显示后启动层,类似于docker run-it layer\u number bash
然后查找您的文件sodocker run-it 1331a22dcf67 bash
并查找您的文件这是错误的run mkdir-p/blast&&cd/blast
,您的cd被“遗忘”,请改用WORKDIR,我猜你的文件在/因为在一次跑步中你做了cd xxx
,这只在这次跑步中有效,在下一次跑步中它被忘记了,你可以做RUN cd;wget。。;tar
或者像我说的那样使用WORKDIR
2017-04-25 07:41:47 (10.1 MB/s) - 'ncbi-blast-2.6.0+-x64-linux.tar.gz' saved [222504398]
ncbi-blast-2.6.0+/
ncbi-blast-2.6.0+/ChangeLog
ncbi-blast-2.6.0+/LICENSE
ncbi-blast-2.6.0+/ncbi_package_info
ncbi-blast-2.6.0+/doc/
ncbi-blast-2.6.0+/doc/README.txt
ncbi-blast-2.6.0+/bin/
ncbi-blast-2.6.0+/bin/makeblastdb
ncbi-blast-2.6.0+/bin/tblastx
ncbi-blast-2.6.0+/bin/tblastn
ncbi-blast-2.6.0+/bin/blastn
ncbi-blast-2.6.0+/bin/blastdb_aliastool
ncbi-blast-2.6.0+/bin/update_blastdb.pl
ncbi-blast-2.6.0+/bin/windowmasker
ncbi-blast-2.6.0+/bin/psiblast
ncbi-blast-2.6.0+/bin/blastx
ncbi-blast-2.6.0+/bin/rpsblast
ncbi-blast-2.6.0+/bin/segmasker
ncbi-blast-2.6.0+/bin/blastdbcheck
ncbi-blast-2.6.0+/bin/rpstblastn
ncbi-blast-2.6.0+/bin/deltablast
ncbi-blast-2.6.0+/bin/makembindex
ncbi-blast-2.6.0+/bin/convert2blastmask
ncbi-blast-2.6.0+/bin/blastp
ncbi-blast-2.6.0+/bin/dustmasker
ncbi-blast-2.6.0+/bin/makeprofiledb
ncbi-blast-2.6.0+/bin/blastdbcmd
ncbi-blast-2.6.0+/bin/legacy_blast.pl
ncbi-blast-2.6.0+/bin/blast_formatter
ncbi-blast-2.6.0+/README
---> 1331a22dcf67
Removing intermediate container 06070bb79e70