インストールから起動、launchd での常駐運用まで。所要は 5 分ほどです。
ダッシュボードで canal を作成し、canal 詳細の「セットアップ」タブから接続ファイルwirecanal.jsonをダウンロードします(スクリーンショットつきの手順は① canal を作成する)。 このファイルにはその canal 用の接続キーが入っています。
エージェントを置きたいディレクトリ(例~/wirecanal)で、ターミナルから次の 1 行を実行します。 そのディレクトリに実行ファイルwirecanalが配置され、バージョン表示まで自動で確認されます。
curl -fsSL https://download.wirecanal.com/install.sh | shブラウザでhttps://download.wirecanal.com/latest/wirecanal-darwin-arm64を直接ダウンロードした場合は、 macOS の保護機能で初回実行が止まることがあります。上のターミナルからのインストールならそのまま実行できます。
ダウンロードしたwirecanal.jsonを同じディレクトリに置いて、起動します。 接続キー入りのファイルなので、読み取りを本人だけに絞っておくのがおすすめです。
chmod 600 wirecanal.json
./wirecanal -config wirecanal.json起動ログに「canal <ID>: https://<ホスト名> へのアクセスをローカルの転送先 <転送先> に届けます」と出れば開通です。 ダッシュボードの canal 詳細でも「接続されました!」に切り替わります。
ログイン中ずっと動かしておくなら、OS 標準の launchd に任せるのが確実です。 以下は/Users/あなたのユーザー名/wirecanalに置いた場合の雛形です(パスはお使いの環境に合わせて調整してください)。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key><string>com.qualiteg.wirecanal</string>
<key>ProgramArguments</key>
<array>
<string>/Users/あなたのユーザー名/wirecanal/wirecanal</string>
<string>-config</string>
<string>/Users/あなたのユーザー名/wirecanal/wirecanal.json</string>
</array>
<key>WorkingDirectory</key><string>/Users/あなたのユーザー名/wirecanal</string>
<key>RunAtLoad</key><true/>
<key>KeepAlive</key><true/>
<key>StandardOutPath</key><string>/Users/あなたのユーザー名/wirecanal/wirecanal.log</string>
<key>StandardErrorPath</key><string>/Users/あなたのユーザー名/wirecanal/wirecanal.log</string>
</dict>
</plist>launchctl load -w ~/Library/LaunchAgents/com.qualiteg.wirecanal.plist
launchctl list | grep wirecanalKeepAlive)。launchctl unload -w ~/Library/LaunchAgents/com.qualiteg.wirecanal.plist。wirecanal.log(StandardOutPathで指定した場所)に書き出されます。エージェントは新しい版が出ると自動で入れ替わります(配布物の署名を検証してから適用・更新に失敗しても直前の版へ自動で戻ります)。 止めたい場合だけwirecanal.jsonに"auto_update": falseを書いてください。
wirecanal.jsonに"proxy_url": "http://proxy.example.co.jp:8080"のように 1 行足すだけで、外向きの接続がそのプロキシを経由します (環境変数のプロキシ設定は参照しません=設定した値だけで動く、予測しやすい挙動です)。
表示を英語にしたいときはwirecanal.jsonに"lang": "en"を 1 行足します。 うまくつながらないときは-verboseを付けて起動すると詳しい記録が出ます。接続キーの失効・再発行はダッシュボードからいつでもできます。これらを含む全オプション(複数 canal・タイムアウト・操作記録など)の解説はwirecanal.json 設定リファレンスにまとめています。