Fork me on GitHub

Ubuntu 18.04.1 LTS 下运行 Vapor 项目

该教程适用于阿里云 CES(其他情况下也可做参考)

阿里云默认的 Ubuntu 系统目前是 16.04 LTS 版本,但是本人在使用过程中对其进行了升级,感觉 18.04 LTS 版本用起来也挺顺手,而且 18.04 版本官方声明是有 10 年的维护期限,所以没什么担忧。


安装

进入正题,Vapor 为我们提供了方便的命令行工具,我们只需要在终端输入:

1
2
sudo apt-get update
sudo apt-get install vapor

便自动安装了 VaporToolBox 和 Swift,十分方便。

目前 Vapor 项目默认是运行在 8080 端口,并推荐搭配 Nginx 进行反向代理。


指定主机和端口

方式一:如果想要直接指定端口执行的话,可以修改 NIOServerConfig,将下面代码加入到 configure.swift 中

1
2
3
# 可以修改 hostname、port 为你期望的值
let serverConfiure = NIOServerConfig.default(hostname: "0.0.0.0", port: 8081)
services.register(serverConfiure)

方式二:或者使用在命令行后拼接参数的方式:

1
2
3
vapor run serve --port=8080 --hostname=127.0.0.1
# You can also do:
# vapor run serve --bind=127.0.0.1:8080

如果需要直接运行在 80 端口,则需要 sudo 权限:

1
2
3
4
5
sudo vapor run serve --port=80 --hostname=127.0.0.1
# 这条命令与上面等价:sudo vapor run serve --bind=127.0.0.1:80
# 若要开放给其他设备访问则要运行在 0.0.0.0 上
# sudo vapor run serve --port=80 --hostname=0.0.0.0
# 这条命令与上面等价:sudo vapor run serve --bind=0.0.0.0:80

执行完上面命令,如果项目正常运行的话,就可以看到控制台中输出:

1
2
# Vapor 项目已启动
Server starting on http://127.0.0.1:80

直接修改配置文件,指定主机及端口,这两种方式效果相同,喜欢用哪种随便挑吧,不用客气 :-D

 

如果想要直接让 Vapor 以 release 模式运行 (部署),执行下面代码。

1
2
swift build -c release
.build/release/Run --env production
------------- 本文结束感谢您的阅读 -------------