使用Swift4+Vapor写后端-部署heroku服务器

使用Swift4+Vapor写后端-部署heroku服务器_第1张图片

前言

上一篇我们初步了解了vapor创建项目,本篇我们学习一下vapor服务的部署。国外网站Heroku 提供免费的代码部署服务,作为初学者我们选择heroku来部署我们的vapor服务。

注册

heroku注册一个账号,注册流程略。注册完成后,我们可以直接创建一个app,或者使用终端操作。本篇介绍后者。

安装与卸载(mac OS)

安装

下载安装包。

homebrew命令安装heroku

brew install heroku/brew/heroku

国内使用homebrew安装异常缓慢,推荐使用安装包安装。

卸载

rm -rf /usr/local/heroku
rm -rf ~/.local/share/heroku ~/.config/heroku ~/Library/Caches/heroku

如果使用homebrew安装

brew uninstall heroku
rm -rf ~/.local/share/heroku ~/.config/heroku ~/Library/Caches/heroku

部署服务器

cd 进入项目目录下,提交git后开始设置服务器。

登录heroku: heroku login

Enter your Heroku credentials:
Email: xxxxxxxx.com
Password: ***********
Logged in as xxxxxxxx.com

使用vapor部署heroku: vapor heroku init

// 自定义app名字
Would you like to provide a custom Heroku app name?
y/n> y
Custom app name:
> youAppName  
// Choose a region: US OR Europe       
Would you like to deploy to a region other than the US?
y/n> n

Would you like to provide a custom Heroku buildpack?
y/n> n

Are you using a custom Executable name?
y/n> n

Would you like to push to Heroku now?
y/n> y

(重要)自定义custom Heroku buildpack

其实在上一步Would you like to provide a custom Heroku buildpack?就可以完成这个操作,为了条例清晰,所以单独做这个操作。这步是告诉Heroku我们的包是使用Swift编写的,“build”的时候要采用Swift语言。

heroku buildpacks:set https://github.com/kylef/heroku-buildpack-swift.git

(重要)增加Procfile和.swift-version文件

因为我们要部署在heroku上,所以要在项目根目录下增加Procfile文件。使用Procfile可以为web服务器设置运行进程。 任何使用swift包管理器从Swift源生成的二进制文件都将放置在$PATH中。文件内容如下:

for Vapor 2 apps:

web: Run --env=production --port=$PORT

for Vapor 3 apps (Swift 4.1 required):

web: Run serve --env production --hostname 0.0.0.0 --port $PORT

使用.swift-version文件自定义swift版本。这里我们使用的是swift4,所以在.swift-version文件中输入4.0.

配置数据库

heroku addons:create heroku-postgresql:hobby-dev

更新部署

git add .
$ git commit -am "make it better"
$ git push heroku master

除了更新部署之外,以上任何操作都能在heroku的网页后台完成,填写错误都可以去后台更改。

最后

差不多都踩完坑了,完成这些操作部署成功之后,应该就可以访问app的请求了。
后面我们就正式开始敲代码吧~

相关参考

Heroku
Heroku文档

你可能感兴趣的:(使用Swift4+Vapor写后端-部署heroku服务器)