Tag: 环境variables

如何在Dockerfile中设置ENVvariables.txt文件中的内容?

我想Dockerize一个Node.js应用程序,并在创buildDockerfile时,我遇到了连接到数据库的凭据存储在.txt文件的问题。 我怎样才能将我的Dockerfile中的.txt文件的内容设置为ENVvariables?

构build之后,将Environmentvariables传递给Webpack 2

我有一个问题,需要我参考Webpack 2中的环境variables。作为参考,我已经描述了下面的问题的上下文: 我们正在使用vue-cli Webpack 2样板 我们正在运行2个不同的版本(基于样板) npm运行开发(本地) npm运行构build(集成,uat,生产层) 我们有API和服务器url,根据集成/用户/生产层而改变 我们的CI / CDpipe道工作如下 在集成层上运行Travis脚本来构buildUI,运行npm run build命令 成功之后,在集成层上构build和部署Docker容器 相同的Docker容器然后被推送到UAT和Production层 我们使用Apache作为我们的Web服务器 问题是,Webpack构build网站。 然后构buildDocker容器,并按顺序部署在多个层上。 因此,在构build期间,Webpack无法知道/访问某个值,因为在三层中使用相同的Docker容器,所以它告诉它要使用哪个SERVER和API url(因为它们与Integration,UAT和Production不同)上文提到的。 我的问题 – 有没有办法改变/传递环境variables,并设置正确的url后Webpack的构build? – 如果没有,解决这个问题的最好方法是什么? 谢谢。

inputtensorflow时遇到问题

我安装并运行Docker进行图像分类,一切都很好,直到我不得不重新训练我的模型,我使用了代码Python tensorflow/examples/image_retraining/retrain.py \ ,起初错误不能导入tensorflow,但是我已经通过pip3正确安装tensorflow,它在python shell中运行正常,所以我从path中删除了Python 27,因为我认为它是以某种方式redirect的,但是我仍然有python 27的anaconda版本,并且popup错误现在是 C:\Program Files\Anaconda2\python.exe: can't open file 'tensorflow/examples/image_retraining/retrain.py': [Errno 2] No such file or directory

尝试使用Install-Module在Windows Server 2016中安装Docker时出错

我试图在Windows Server 2016中安装Docker没有成功: PS C:\Windows\system32> Install-Module -Name "DockerMsftProvider" -Force -Verbose VERBOSE: Using the provider 'PowerShellGet' for searching packages. VERBOSE: The -Repository parameter was not specified. PowerShellGet will use all of the registered repositories. VERBOSE: Getting the provider object for the PackageManagement Provider 'NuGet'. VERBOSE: The specified Location is 'https://www.powershellgallery.com/api/v2/' and PackageManagementProvider is 'NuGet'. VERBOSE: Searching […]

Docker Compose嵌套的环境variables

我有一个现有的应用程序使用应用程序configuration文件,如下所示: "ConnectionInfo": { "ServerName": "The Server URL", "DatabaseName": "The DatabaseName", "UserName": "The User Name", "Password": "The Password"} 现在,当我有一个简单的设置,说 "ConnectionString":"My Connection String" 我知道如何在compose.yml文件中覆盖它: environment: – ConnectionString=what I want it to be 问题是,你如何设置顶部的服务器名称?

在Bashvariables赋值中找不到命令错误

我有这个脚本叫做test.sh: #!/bin/bash STR = "Hello World" echo $STR 当我运行sh test.sh我得到这个: test.sh: line 2: STR: command not found 我究竟做错了什么? 我在网上看到极其基本的/初学者的bash脚本教程,这就是他们如何声明variables…所以我不知道我在做什么错了。 我在Ubuntu服务器9.10。 是的,bash位于/bin/bash 。

如何在docker的subprocesssupervisord环境中使用nodejs参数

使用Docker运行–env,我设置ARGUMENT = yes。 在supervisord.conf中: program:service] command=/usr/bin/node /service/service.js argument=%(ENV_ARGUMENT)s stdout_logfile=/service/service.out autostart=true autorestart=true 我需要使用docker run –env和supervisord环境传递的环境variables来运行nodejs参数。 使用%(ENV_ARGUMENT)s (Docker未运行), %(ARGUMENT)s (Docker未运行)或$ARGUMENT (它将以string$ ARGUMENT取回)不起作用。 是否有任何适当的方式使用supervisord环境的nodejs参数?

将envvariables传递给DOCKER Spring Boot

我有一个SpringBoot应用程序,它的Dockerfile如下。 我有不同的环境,如本地/ dev / qa / prod的application.properties。 当我在IDE中本地运行应用程序时,我在VM选项中传递了-Dspring.profiles.active = local ,以便加载application-local.properties。 作为docker容器运行,我构build了一个包含所有application.properties的图像。 即,对于所有的环境,它只是相同的泊坞窗图像。 当我在一个环境中运行映像时,我想以某种方式让SpringBoot了解它的开发环境,所以它必须加载application-dev.properties。 我正在使用AWS ECS来pipe理容器。 FROM openjdk:8-jdk-alpine VOLUME /tmp ADD target/sample-test-sb-sample-app-1.0-exec.jar app.jar EXPOSE 8080 ENV JAVA_OPTS="" ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]

如何使用shell脚本在dockerfile中设置环境variables的dynamic值

我的情况如下 我需要添加“项目”文件夹docker容器为生产build设,但对于开发生成我想将本地卷装载到容器的项目文件夹,例如。 ADD project /var/www/html/project 没有发展(我可以在开发中复制一个虚拟文件夹) 如果我将整个项目文件夹复制到开发中的容器中,那么项目文件夹中的任何更改都将使add命令之后的dockercaching器无效。 开发Docker镜像需要时间。 我想为这两个环境使用相同的docker文件 为了达到这个目的,我在docker文件中使用了ADD $PROJECT_DIR /var/www/html/project ,其中$ PROJECT_DIR是环境variables 在像ENV PROJECT_DIR project或ENV CONFIG_FILE_PATH dummy-folderdocker文件中设置环境variables将正确的文件ENV CONFIG_FILE_PATH dummy-folder添加到容器,但它需要我每次更改docker文件。 build造docker图像时,我也可以传递“build-arg”参数 docker build -t myproject –build-arg "BUILD_TYPE=PROD" –build-arg "PROJECT_DIR=project" . 由于variablesBUILD_TYPE和PROJECT_DIR是相关的,我想根据BUILD_TYPE设置CONFIG_FILE_PATHvariables。 这将防止我忘记更改一个参数的情况。 为了设置我写下的脚本“set_config_path.sh”的PROJECT_DIRvariables, if [ $BUILD_TYPE="PROD" ]; then PROJECT_DIR="project"; else PROJECT_DIR="dummy-folder"; fi 然后我使用dockerfile运行脚本 RUN . /root/set_project_folder.sh 这样做,set_project_folder.sh脚本可以访问BUILD_TYPEvariables,但PROJECT_DIR不反映在docker文件中 在本地机器的terminal上运行set_project_folder.sh时,PROJECT_DIRvariables被改变了,但是它不能和dockerfile一起工作 有无论如何,我们可以从子shell脚本更改环境variables,例如上面的问题中的“set_config_path.sh”? 如果可能的话,它可以在许多用例中使用,使dockerbuild设dynamic 我在这里做错了什么? 要么 有没有另外一个好方法来达到这个目的?

Net核心Docker环境variables

我不知道这是否是发布这个问题的正确的地方。 如果不是请对不起! 我在.net核心2.0中有一个应用程序,我已经为应用程序设置/config/servicediscovery.json创build了一个文件夹 Sample { "Discovery": { "Enabled": true, "Url": "http://localhost:8500", "ServiceId": "service", "ServiceName": "service", "ServiceUrl": "http://localhost", "ServicePort": "53489", "HealthCheck": "http://localhost:53489/ping", "HealthCheckInterval": 5 } } 此文件具有与服务发现应用程序进行通信的默认设置,默认情况下具有在本地主机上运行的值。 在创build图像后,我试图用docker运行应用程序 docker run –rm -it -p 5000:80 –name ServiceName Repository:Service:2.0.17298.133 –env ASPNETCORE_ENVIRONMENT=Production -e Discovery:HealthCheck="htttp://www.microsoft.com" 但是这并不适用于环境设置。 这是对的? 还有另一种方法来做到这一点?