Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在运行时使用angular 7读取docker中的yml文件_Angular - Fatal编程技术网

如何在运行时使用angular 7读取docker中的yml文件

如何在运行时使用angular 7读取docker中的yml文件,angular,Angular,我对angular,kubernetes和docker都是新手, 我们需要使用包含机密的.yml。 我们目前正在将所有内容都放在environment.prod.ts文件中,但希望使用docker中提供的.yml(最初手动生成) 我想用的是 Angular7+-->environment.prod.ts(在构建/运行时从docker文件中放置环境变量并获取环境变量(文件路径)的详细信息)--->dockerfile(包含环境变量和机密文件的路径映射)--->带有机密的.yml文件(在运行时从中获

我对angular,kubernetes和docker都是新手, 我们需要使用包含机密的.yml。 我们目前正在将所有内容都放在environment.prod.ts文件中,但希望使用docker中提供的.yml(最初手动生成)

我想用的是 Angular7+-->environment.prod.ts(在构建/运行时从docker文件中放置环境变量并获取环境变量(文件路径)的详细信息)--->dockerfile(包含环境变量和机密文件的路径映射)--->带有机密的.yml文件(在运行时从中获取数据)

我对它做了很多搜索,但找不到任何可以搭配的东西。有人知道在哪里可以找到通过代码和配置实现的参考吗

如果有更好的方法,欢迎你。 请建议

更新: 我的要求是使用.yml显示在POD/构建图像外部,但在docker内部。 而不是将所有内容都放在Environment.ts/Environment.prod.ts中, 我希望将它放在.yml中,并在运行时使用它(加密适用) Angular环境文件将只包含上面要执行的最小信息。 已经试过了 1) 使用Web包读取dockerfile中的环境变量 2) 配置文件存在于构建本身中

这种方法是否需要使用nodejs进行http调用?如果是,请建议。
希望这会清除云,而不是添加它。

我不太确定,我是否理解正确。 正如您可能知道的,您不应该将您不希望公开的秘密放入前端代码中

至于在Angular应用程序中使用环境变量;你可以用。版本8.0.0打算与Angular 8一起使用,因为它使用了Angular示意图和构建器。版本2.0.0可与旧版本一起使用


免责声明:我是angular服务器端配置的作者。

您可以将该文件添加到
angular.json
文件中的资产中,并让Webpack随身携带。然后,您可以定期调用服务中的文件来解析和使用其数据

这也是
environment.ts
文件的基本功能,正如您在
angular.json
中看到的,它在构建步骤中被替换

"configurations": {
            "production": {
              "fileReplacements": [
                {
                  "src": "src/environments/environment.ts",
                  "replaceWith": "src/environments/environment.prod.ts"
                },
            }
}


同样的原则也适用于您自己的文件:-)。

谢谢Bjorn,我们已经在做了。我不想这样做。我的要求是使用docker中存在的文件,即从angular project中docker中存在的yml获取数据。您已经在这样做了,您不想这样做吗?这是怎么一回事?这是框架提供的选项。要么重写你的问题,展示你已经尝试过或正在做的事情,要么接受答案?是的,目前正在做并希望使用yml文件。我已经在que中提到过,将所有东西都放在环境文件中,并计划搬走。我的要求是使用docker中的yml文件。您的响应是在构建时对不同的图像使用不同的env文件。对不起,我不能接受你的回答。谢谢