風速です。今回はDeno Deployというものをさわっていきたいと思います。
前回Denoをさわってみたので今回はそれを用いてDeno Deployにデプロイまでをしてみたいと思います。
Deno Deployとは
Deno Deployは、サーバーレスJavaScriptアプリケーション用のグローバル分散プラットフォームです。
JavaScript、TypeScript、WebAssemblyコードは、ユーザーに地理的に近い管理対象サーバー上で実行されるため、待ち時間が短くなり応答時間が速くなります。
Deployアプリケーションは、仮想マシンではなく、Denoランタイムを搭載した高速で軽量なV8アイソレート上で実行されます。
とのことで、web上でみると、githubにあるリポジトリからデプロイしたり、playgroundからはソースを作成、githubにもexportできたりするみたいです。
インストール
前回Deno自体のインストールをしているので、deployctlユーティリティというものをインストールします。自分の環境だとpathの追加まではやってくれなかったので、インストールのメッセージに書かれているpathを追加しました。
$ deno install -A jsr:@deno/deployctl --global
インストールされているかの確認をします。
$ deployctl --help
deployctl 1.13.0
Command line tool for Deno Deploy.
SUBCOMMANDS:
deploy Deploy a script with static files to Deno Deploy
projects Manage projects
deployments Manage deployments
logs View logs for the given project
top Monitor projects resource usage in real time
upgrade Upgrade deployctl to the given version (defaults to latest)
api Perform raw HTTP requests against the Deploy API
For more detailed help on each subcommand, use:
deployctl <SUBCOMMAND> -h
デプロイ
準備が整ったのでデプロイをしていきます。前回作成したプロジェクトは単純なtsの単一ファイルだったので、新しくDenoが提供しているFreshというフレームワークのプロジェクトを作成しました。
テンプレートのままですが、、、
$ deployctl deploy
コマンドをん実行すると、githubがブラウザで立ち上がるので、承認等をするとデプロイされたように見えましたが、エラーがでていました。
メッセージをみると、settings -> Git IntegrationのBuild Commandの場所にdeno task build
を入れてくださいとのこと。
webからリポジトリにあげたプロジェクトを確認すると、presetがすでに設定されていたので、そのままDeploy Projectを押します。
まとめ
今回はコマンドからやろうとしてみましたが、結局webの画面からポチポチとやる方が簡単で良い気と感じました。
ただcliツールはよしなに使えて、何かと便利なところがあると思うので痒いところに手が届くのかなと思いました。playgroundでwebのエディタからそのままgithubのリポジトリにエクスポートできるというのは初めてみる機能だったので面白いと思いました。
以上、風速でした。