当前位置: 首页 > 知识库问答 >
问题:

aspnet core 2.2 web app环境变量在docker中未更改

戚鸿福
2023-03-14

我有一个ASP.NET Core2.2 web应用程序,我为它启用了docker支持。我已经在这里创建了一个测试应用程序,以便在这里进行审查。

我正在本地使用Docker在VS中运行它。我想将环境变量/秘密添加到app settings secrets中,以便覆盖appsettings.json文件中的值。为了在本地执行此操作,我尝试在以下中更改值:

  • LaunchSettings.json
  • DockerFile
docker exec -t -i 4c05 /bin/bash

会有什么问题?我要那个变量改变。一旦开始工作,我真正想要做的是向环境变量添加一个连接字符串secret,以便可以通过appsettings.json文件或docker secret环境变量(如果aspnetcore web应用程序运行在容器中)在本地使用它。我想我已经让这段代码正常工作了,只是变量没有按照预期部署到正在运行的容器中。

谢谢

共有1个答案

周正真
2023-03-14

嗯-看来VS中的DockerFile支持有问题。但是,当我使用编排支持时,使用docker-compose,功能会按照预期工作,所以我自己回答这个问题:-)

 类似资料:
  • 问题内容: 我正在尝试设置一个postgres容器,并希望使用以下命令设置postgres登录名: 所以我像这样创建了docker-compose.yml 我还尝试了将环境变量声明为db部分的其他语法: 但是这些选项似乎都不起作用,因为无论出于什么原因,无论何时我尝试使用各种连接字符串连接到postgres数据库: 与抱怨没有用户数据库相反,它们都给我身份验证失败。 问题答案: 您收到的身份验证错

  • 我在使用dotnet core 3.1和visual Studio生成的DockerFile时遇到了一些问题。 我试图通过Dockerfile将密码放入docker的环境变量中,但当我使用读取varibale时,该变量为NULL。 提前致谢

  • 我猜这是因为它没有$app_vol_dir,但为什么会这样呢?如果docker compose扩展了另一个定义Environment:variables的compose文件

  • 问题内容: 是否可以重用在多个容器之间共享的环境变量以避免重复,如本示例所示: 问题答案: 该选项可能是好的,但它不支持在撰写文件。其他走的方式是: 扩展名字段(撰写文件3.4+) 如果可以使用3.4+组成文件,则扩展名字段可能是最佳选择: docker-compose.yml env_file指令 docker-compose.yml variables.env * 项目根目录中的 *.env

  • 这个码头商。yml: 使用这个。env文件(它位于根文件夹中,如docker-compose.yml和Dockerfile): 和节点服务器启动中的以下代码: 我真的更喜欢使用第一种或第二种方法 docker版本:18.06.1-CE docker-compose版本:1.19.0

  • 我试图在我的Svelte应用程序中为APIendpoint使用docker compose环境变量,但它没有定义。 rollup.config 苗条