Vaporとは
Vaporは、Swift製のWebフレームワークです。
公式URLは https://vapor.codes/ で、Vapor 本体のリポジトリ(https://github.com/vapor/vapor) には
Vapor is a web framework for Swift.
It provides a beautifully expressive and easy to use foundation for your next website, API, or cloud project.
と説明が書かれています。
Vapor はスター数も多く(2020年12月現在1万9千程度)、gitignore.io などVaporで開発されたアプリケーションも少しずつ増えてきました。
今回はVaporアドベントカレンダー2020の初日として、インストールとHelloWorldをしてみようと思います。
環境構築
for MacOS
公式(https://docs.vapor.codes/4.0/install/macos/)
Xcode(11.4 以上)が必要なのでApp Storeからダウンロードします。(https://apps.apple.com/us/app/xcode/id497799835?mt=12)
また Vapor4 には Swift 5.2 以上が必要なので、バージョンを確認します。
$ swift --version
Apple Swift version 5.3.1 (swiftlang-1200.0.41 clang-1200.0.32.8)
Target: x86_64-apple-darwin20.1.0
次に Vapor のプロジェクト作成が簡単にできる VaporToolBoxを インストールします。
$ brew install vapor
$ brew upgrade vapor # すでにインストールされている場合
Vapor ToolBoxがインストールできたことを確認します。
$ vapor --help
for Linux
公式(https://docs.vapor.codes/4.0/install/linux/)
Vapor4は以下のLinuxディストリビューション & バージョンでサポートされています。
Version | Version | Swift Version |
---|---|---|
Ubuntu | 16.04, 18.04 | >= 5.2 |
Ubuntu | 20.04 | >= 5.2.4 |
Fedora | >= 30 | >= 5.2 |
CentOS | 8 | >= 5.2.4 |
Amazon Linux | 2 | >= 5.2.4 |
Swift がインストールされた状態でVaporToolBoxを インストールします。
$ git clone https://github.com/vapor/toolbox.git
$ cd toolbox
$ git checkout <desired version>
$ make install
Vapor ToolBoxがインストールできたことを確認します。
$ vapor --help
HelloWorld
環境構築が完了したので早速プロジェクトを作成します。
プロジェクトの作成には new
コマンドを使用します。
$ vapor new プロジェクト名
vapor new
コマンドを実行すると対話式でプロジェクトを作成することができます。(必要なパッケージが組み込まれた状態でプロジェクトが作成されます。)
-n
フラグをつけてプロジェクトを作成するとパッケージが組み込まれない素の状態のプロジェクトを作成することができます。
今回は-n
フラグをつけてプロジェクトを作ります。
$ vapor new hello -n
プロジェクト名のディレクトリが作成されれます。
ディレクトリの中に入り、 Package.swift
ファイルをXcodeで開きます。
$ cd hello
$ open Package.swift
パッケージのインストールが終わったらビルドボタンを押すことでアプリを実行します。
ブラウザで http://localhost:8080/ にアクセスすると It works!
と表示され、アプリケーションが起動していることが確認できます。
Xcodeを使わない場合は以下のコマンドでビルドとアプリケーションの実行をすることができます。
$ cd hello
$ vapor build
$ vapor run