我有一个由grunt构建的angularjs应用程序,它使用grunt将环境变量(如API端点)注入angularjs代码。但是,这个问题更适用于在docker容器中部署的grunt应用程序。
我刚刚开始尝试将docker集成到部署过程中(something similar to this),但意识到我不知道如何最好地将环境变量放入应用程序中。我将描述事件的顺序:
如您所见,grunt构建发生在步骤2中,但环境变量在步骤4之前不可用。
我可以包装调用以在一个小的bash脚本中为我的角应用程序启动静态服务器,该脚本创建一个包含环境变量的javascript文件。然后,我可以在<script>
中添加index.html
标记以导入它,然后像往常一样启动服务器,一切正常。然而,这感觉就像我不恰当地回避咕噜声。
有没有人知道在connect:dist:keepalive
任务运行的同时将环境变量注入客户端代码的简单方法?为了澄清,我已经使用了ng-constant
grunt任务,但是只能在构建时访问环境变量,而不是服务器启动时间。