gpt4 book ai didi

Docker 命令在构建期间失败,但在正在运行的容器中执行时成功

转载 作者:IT老高 更新时间:2023-10-28 12:38:05 26 4
gpt4 key购买 nike

命令:

docker build -t nginx-ubuntu . 

下面的 Dockerfile :

FROM ubuntu:12.10RUN apt-get updateRUN apt-get -y install libpcre3 libssl-devRUN apt-get -y install libpcre3-devRUN apt-get -y install wget zip gccRUN wget http://nginx.org/download/nginx-1.4.1.tar.gzRUN gunzip nginx-1.4.1.tar.gzRUN tar -xf nginx-1.4.1.tarRUN wget --no-check-certificate https://github.com/max-l/nginx_accept_language_module/archive/master.zipRUN unzip masterRUN cd nginx-1.4.1RUN ./configure --add-module=../nginx_accept_language_module-master --with-http_ssl_module --with-pcre=/lib/x86_64-linux-gnu --with-openssl=/usr/lib/x86_64-linux-gnu

在最后一行失败 (./configure ...)

如果我删除最后一行并在容器中运行 bash,并且手动执行最后一行,就可以了。

我希望在容器中成功运行的任何命令都应该可以工作当命令附加在 Dockerfile 中时(以 RUN 为前缀)

我错过了什么吗?

最佳答案

密码在 RUN 命令中不是持久的。您需要在同一个 RUN 中 cd 和配置。

这个 Dockerfile 工作正常:

FROM ubuntu:12.10
RUN apt-get update
RUN apt-get -y install libpcre3 libssl-dev
RUN apt-get -y install libpcre3-dev
RUN apt-get -y install wget zip gcc
RUN wget http://nginx.org/download/nginx-1.4.1.tar.gz
RUN gunzip nginx-1.4.1.tar.gz
RUN tar -xf nginx-1.4.1.tar
RUN wget --no-check-certificate https://github.com/max-l/nginx_accept_language_module/archive/master.zip
RUN unzip master
RUN cd nginx-1.4.1 && ./configure --add-module=../nginx_accept_language_module-master --with-http_ssl_module --with-pcre=/lib/x86_64-linux-gnu --with-openssl=/usr/lib/x86_64-linux-gnu

关于Docker 命令在构建期间失败,但在正在运行的容器中执行时成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17891669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com