如何根据配置文件设置环网端口

史蒂夫·沙里(Steve Shary)

我有一个clojure ring项目,我希望能够根据配置文件设置端口号。目前,我有来自project.clj的以下代码段

:plugins [[lein-ring "0.8.13"]]
:ring {:handler project.handler/webServer
       :init    project.init/initialize
       :port    80}
:profiles {:dev        {:jvm-opts ["-Dproperty-file=dev.properties"]}
           :ci         {:jvm-opts ["-Dproperty-file=ci.properties"]}
           :uberjar    {:aot :all}})

我想将开发环境的端口设置为8080,然后将生产环境的端口设置为80。我会一直在端口80上运行,但这需要root特权,而不是我想为开发运行所要做的事情。我曾尝试过(盲目地)将环形端口放入uberjar配置文件,但这没有用。我还尝试使用environ项目根据环境变量设置环网端口,但这也不起作用。

我对将命令行参数传递给命令的解决方案持开放java -jar [...]-standalone.jar态度,但是我对如何获得任何可行的工作方法感到困惑。

斯本苏

您不需要环境。需要访问源代码中的配置变量时使用它。project.clj你可以直接做到这一点:

:profiles {:dev        {:jvm-opts ["-Dproperty-file=dev.properties"]
                        :ring {:port 8080}}
           :ci         {:jvm-opts ["-Dproperty-file=ci.properties"]
                        :ring {:port 80}}
           :uberjar    {:aot :all
                        :ring {:port 80}}})

我已经对此进行了测试(没有jvm-opts8080端口,而不是8081端口),它可以正常工作。

替代方法:如果它们是不同的计算机,则可以使用操作系统的环境变量:

:ring {:handler project.handler/webServer
       :init    project.init/initialize
       :port    ~(System/getenv "RING_PORT")}

然后在开发机中将RING_PORT设置为8080,在生产机中将RING_PORT设置为80。

$ export RING_PORT=80

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何根据配置文件设置环网端口

来自分类Dev

如何根据配置文件设置属性值

来自分类Dev

如何从配置文件设置Angular值?

来自分类Dev

如何设置默认的终端配置文件?

来自分类Dev

如何永久设置本地配置文件?

来自分类Dev

如何设置默认的终端配置文件?

来自分类Dev

如何设置Android MediaCodec配置文件?

来自分类Dev

如何从配置文件设置Angular值?

来自分类Dev

如何设置默认配置文件弹簧

来自分类Dev

如何设置配置文件环境?

来自分类Dev

根据 Spring 配置文件属性设置字段

来自分类Dev

如何为OCaml配置_oasis以设置“配置文件”标志

来自分类Dev

arduino,使用SD配置文件中的数据设置以太网和网络

来自分类Dev

如何使用Maven配置文件设置Spring Active配置文件

来自分类Dev

iOS设置配置文件

来自分类Dev

MIME设置的配置文件

来自分类Dev

配置文件的 Git 设置

来自分类Dev

如何将Spring配置文件设置为包?

来自分类Dev

如何在mongodb配置文件中设置授权?

来自分类Dev

如何基于Maven配置文件动态设置soap:address

来自分类Dev

Deltaspike和Quartz:如何从配置文件设置cronExpressions

来自分类Dev

如何设置自定义配置文件进行测试?

来自分类Dev

如何设置默认的activemq 5.10.0配置文件?

来自分类Dev

如何在硒中正确设置Firefox配置文件?

来自分类Dev

如何设置WebDriver IO的配置文件位置

来自分类Dev

如何在AWS Client上设置配置文件

来自分类Dev

如何设置从配置文件登录python的级别

来自分类Dev

maven如何选择配置文件(如果未设置)?

来自分类Dev

如何设置自定义配置文件进行测试?