Heroku
Swift
Swift3.0
Vapor

サーバサイドSwiftライブラリ Vaporの始め方 (Docs読むのめんどくさい人用)

More than 1 year has passed since last update.

Vaporの記事はQiitaにたくさんあるんですけどほとんどがVaporのインストールとかが省略されてるか、バージョンが古かったりしたので最新のインストール方法やビルド方法、実行方法、Herokuへのデプロイ方法まで紹介したいと思います。

まぁ、VaporのDocs見ればすぐできるんですけど、僕みたいにめんどくさがって日本語のサイトしか見ず、躓かないように紹介しますね。

Docs読んでぱっぱとやっていく人用にリンク貼っておきます。


Vapor toolboxのインストール

僕は前からSwiftを使っていろいろしてたのでSwiftとPackage Managerのインストールはしてません。

なので紹介することができません。ご了承ください。

まずはVaporコマンドを使うためのtoolboxをインストールします。


ターミナル

$ curl -sL check.vapor.sh | bash

$ curl -sL toolbox.vapor.sh | bash

このあとに


ターミナル

$ vapor --help


でエラーが出なかったら完了です。

アップデートがあるかもしれないので一応


ターミナル

$ vapor self update


これも実行しておきましょう。


プロジェクト作成

toolboxをインストールできたのでこれからプロジェクト作成します。

xcodeから作るのではなくターミナルから作るみたいでびっくりしました。


ターミナル

$ vapor new *****


******にプロジェクト名を入力し実行するとプロジェクトフォルダができます。

僕はseversideという名前にしたかったのですが誤字りました。マジでめんどくさい。。。

スクリーンショット 2016-12-31 13.32.37.png

これめちゃめちゃ可愛いですよね。

サーバーサイドSwiftのライブラリたくさんある中でなんでこれにしたかっていうと、サイトが可愛いからんですよね。

どうでもいいんですけど。

フォルダはできたんですがフォルダを作ったばかりだとxcodeで開くための.xcodeprojファイルはないです。

そのファイルを作るためのコマンドを実行します。


ターミナル

$ vapor xcode


プロジェクトファイル直下でこれを実行してください。

これで.xcodeprojができます。処理が終わったあとにxcodeで開くか聞いてくるのでy/nで答えましょう。


ビルド&実行

もうデフォルトのままビルドし実行します。デフォルトでも、もうめちゃめちゃ簡単なコードが書かれてますので実行できます。


ターミナル

$ vapor build


これでビルドができます。

めちゃめちゃ長いと思います。僕のは長かったです。

次は実行です。


ターミナル

$ vapor run serve


どちらもプロジェクトファイル直下で実行してください。

無事にRunできると


ターミナル

Running sevsrside...

No preparations.
Server 'default' starting at 0.0.0.0:8080

と表示されます。

localhostにアクセスしてみましょう。

スクリーンショット 2016-12-31 14.20.34.png

このようなかわいいのが表示されると思います。

Runが成功しました。


Herokuにデプロイし実行

無事ローカルでRunができたので次は実用に向けるためHerokuにデプロイします。

Heroku以外にもDigitalOcean , Docker , AWS , Bluemixを使うことができます。

今回は無料でssl通信も使えることができるHerokuを使うことにします。

Herokuの設定では自分のgithubアカウントにデプロイするのではなくHeorkuGitにデプロイするように設定してください。

今回はVaporのはじめ方の記事であり、Herokuの記事ではないのでHerokuでの様々な設定はすべて終わらせてからこのあとの記事を読んで下さい。

Herokuの使い方の記事はQiitaにも沢山ありますのでがんばってください。幾つか載せておきますね。

HerokuにログインやHerokuGitとの紐付けに成功したらBuildpackをHerokuにインストールします。これをインストールしないとHeroku上にSwiftをあげることができません。


ターミナル

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


この一行をプロジェクト直下で実行するだけです。

このあとにgitにコミット、プッシュをすると完了します。

アプリケーションを開いてみるとローカルと同じ可愛い画面が表示されると思います。


最後に

今回簡単にインストール方法から実行、Herokuにデプロイするところまで紹介しましたが、簡単に説明しすぎて至らないところがあるかもしれませんが最後まで読んでくださりありがとうございます。

この最後のとこまで読んでくれてる人はいないかもしれませんが、わかりにくいことがあったら、僕が参考にしたサイトのほうが詳しく書いてあったりするので読んでみてください。Docsでも英語できない僕みたいな学生でも読めましたんで読んでみてください。

最後まで読んでいただきありがとうございました。

こんな真面目に書いたの初めて。。。


Reference