- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个基础镜像,它在它的 ENTRYPOINT shell 脚本 docker-entry.sh 中导出了一些变量。
现在我正在使用基本镜像并使用 mongo-entry.sh 运行 CMD。我希望访问从 mongo-entry.sh 中的 ENTRYPOINT 导出的变量。
我能够看到带有来自 docker-entry.sh 的变量的日志语句被打印出来,但是,我无法在 mongo-entry.sh 中访问它
我已经尝试在我的 DockerFile 中调用 docker-entry.sh 和 mongo-entry.sh 作为 ENTRYPOINT
代码:
基础镜像 ENTRYPOINT docker-entry.sh
export var1 = "var1"
当前图片
FROM 'baseimage'
COPY ["mongo-entry.sh"]
CMD ["mongo-entry.sh"]
mongo-entry.sh
echo "var1=$VAR1"
输出
var1=
最佳答案
我怀疑有 1-2 个问题:
ENTRYPOINT
和 CMD
不是从 FROM
图像继承的ENTRYPOINT
|CMD
ENTRYPOINT
和CMD
有两种形式,shell和exec形式。 exec 形式“不调用命令 shell”,因此您不会得到环境变量处理:
https://docs.docker.com/engine/reference/builder/#cmd
这是一个示例,显示了 ENV
值通过 FROM
的图像传递:
echo '
FROM bash
ENV DOG=Freddie
ENTRYPOINT echo "dog=${DOG}"
' | docker build --tag=1st --file=- .
echo '
FROM 1st
ENV CAT=Emmett
ENTRYPOINT echo "dog=${DOG}" "cat=${CAT}"
' | docker build --tag=2nd --file=- .
docker run 1st
docker run 2nd
结果:
dog=Freddie
dog=Freddie cat=Emmett
NB ${DOG}
(及其值)继承自 1st
关于Docker ENTRYPOINT 变量未转入 CMD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55988590/
这个问题在这里已经有了答案: How to pass ARG value to ENTRYPOINT? (5 个答案) 关闭 3 年前。 我试图将参数传递到我的 docker 入口点,但它失败了,这
我正在尝试使用以下方法初始化运行Postgres的容器 FROM postgres:9.6 COPY my.backup /docker-entrypoint-initdb.d/ 在我的Dockerf
我在尝试启动我的应用程序时看到以下错误... > css-modules@1.0.0 start /Users/johnnynolan/Repos/css-modules webpack && ope
当我运行时:docker run --name mongodb -p 27107:27107 mongo --noauth --bind_ip=0.0.0.0 我总是得到这个错误:error: exe
我需要在ENTRYPOINT [..]上运行以下命令: dotnet reportgenerator -reports:coverage.cobertura.xml -targetdir:Report
我在理解或看到将bash脚本用作Docker容器的切入点时遇到问题。我已经尝试了很多东西了大约5个小时。 即使从此official Docker blog,使用bash脚本作为入口点仍然不起作用。 D
我有一个没有 UI 的 GWT 实用程序模块(因此,没有从 com.google.gwt.core.client.EntryPoint 继承的类。当我尝试使用 GWT 1.7.1 编译此模块时,我收到
我试图了解 ENTRYPOINT 之间的差异在 Dockerfile 和 docker run --entrypoint 中. exec ENTRYPOINT的表格允许多个参数, # Source:
我有一个入口点,如下所示 ENTRYPOINT /usr/bin/java ... /usr/path/$FILE 我试图在启动容器时传递一个环境变量 -e FILE=myfile.txt 但是这个值
我想以root用户身份启动nginx和cron,以1001用户身份启动php-fpm。我怎样才能做到这一点?我以为我必须创建一个入口点脚本,在其中我使用su-exec并以root身份启动nginx和c
我已经研究过在WordPress docker镜像中添加WordPress插件,因为在研究中我发现可以在docker-entrypoint.sh文件中添加自定义插件。但是我无法在入口点文件中添加自定义
我必须遵循(简单的)Dockerfile: FROM microsoft/windowsservercore:latest SHELL ["powershell", "-Command", "$Err
我正在尝试使用 ENTRYPOINT,但每当我这样做时,我都会收到一个错误,因为 no such file or directory docker 文件: FROM ubuntu:18.04 COPY
我是Docker的新手。尝试使用Transmission建立小图像。 这是我的 Dockerfile : #base image FROM alpine:latest #install Transmi
有没有办法使用 Dockerfile 在容器停止时运行命令?或在 docker-compose.yml使用 Docker 撰写?本质上,我想要一个在容器导出上运行的命令(与 ENTRYPOINT 相对
我正在使用 Dockerfile 构建自定义图像.显然,新的运行工作正常,但是当我停止容器并重新启动它时 - 它没有启动并保持在 的状态0号导出 . 该图像由 apache2 和一堆用于 symfon
我正在运行以下命令来通过命令行设置入口点以使用此容器启动Nginx服务 root @ server:〜#docker run -it --entrypoint =“/ bin / bash /root
我想在我的 docker-entrypoint.sh 上运行几个脚本; 我的问题是它是否有任何区别,如果有,推荐的解决方法是什么,关于以下选项: 一个 . ${HOMEDIR}/myscript --
我在将环境变量导出到 docker 入口点文件时遇到了一些问题。 这是我的 docker 文件内容: FROM ubuntu:16.04 ADD entrypoint.sh . RU
我正在尝试设置一个 django 项目并对其进行 dockerize。 我在运行容器时遇到问题。 据我所知,abe 构建成功,但运行失败。 这是我得到的错误: ERROR: for web Canno
我是一名优秀的程序员,十分优秀!