Tomo.Log()


[Vapor3]Portを変更する

[09/12, 2018]

日本語 / English

Vapor3で複数のアプを起動したいときなどに、portを変更する方法のやり方。やり方は複数の方法があるみたい。

起動時のコマンドで指定する方法

起動時のコマンドでオプションを指定することができる。
"-p"または"--port"をつけると指定できる。ただし 「vapor run」ではオプションを受け付けてもらいないのでbuildしたバイナリを直接指定する。

.build/debug/Run  -p 8080

リリースビルドは、こんな感じ。

.build/release/Run  -p 8080

NIOServerConfigを変更する方法

configure.swiftのなかでNIOServerConfigを作成して登録することで変更できる。

public func configure(_ config: inout Config, _ env: inout Environment, _ services: inout Services) throws {

let ioServerConfig : NIOServerConfig = NIOServerConfig(
        hostname: "127.0.0.1",
        port:  8080,
        backlog:  256,
        workerCount:  ProcessInfo.processInfo.activeProcessorCount,
        maxBodySize:  1_000_000,
        reuseAddress:  true,
        tcpNoDelay:  true
 )
    
 services.register(ioServerConfig)

     //Othre settings..
}

起動時のコマンドで指定して、NIOServerConfigも変更していた場合

起動時のオプションが優先されるみたい。