美文网首页
使用Swift4+Vapor写后端-部署heroku服务器

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

作者: 范范饭特稀 | 来源:发表于2018-04-09 11:07 被阅读481次

    前言

    上一篇我们初步了解了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服务器

          本文链接:https://www.haomeiwen.com/subject/xtymhftx.html