Caddy
Caddy - The HTTP/2 Web Server Made for Humans
静的なコンテンツを簡単に公開するためのHTTPサーバを紹介します。
Caddyとは
Caddyは手元の静的コンテンツを簡単に公開するためのHTTPサーバです。
以下の特徴があります。
- 指定のディレクトリ以下をその構造のまま公開する
- MarkdownをHTMLに変換する
その他にもいろいろあります。
指定のディレクトリ以下をその構造のまま公開する
なんといってもCaddyの魅力はこの手軽さです。
特定のディレクトリに index.html
を作成しコマンドを叩くだけで、ブラウザからアクセスできます。
$ cat > index.html <!DOCTYPE html> <html> <body> <h1>Hello Caddy</h1> </body> </html> ^C $ ls index.html $ caddy
ブラウザで http://localhost:2015
にアクセスしてみてください。
ポート番号が 2015
なのは公開した年だそうです。おしゃれ。
MarkdownをHTMLに変換する
Markdownを動的にHTMLに変換して見せてくれます。 Markdownでメモをとっている人は多いと思うので、それがそのままコンテンツになると便利です。
Markdownを見せるには設定ファイルが必要です。
caddyfile
というファイル名で設定ファイルを作ります(ファイル名は何でもOKです)。
$ ls index.html $ cat > caddyfile localhost:2015 markdown /md ^C $ ls caddyfile index.html
2行目の /md
はMarkdownファイルを置く場所であり、見せ先でもあります。
/md にMarkdownファイルを作成します。
$ mkdir md $ ls caddyfile index.html md/ $ cat > md/index.md # Hello Caddy This is Markdown format. * I * have * list ^C $ ls md/ index.md
Caddyを実行する時に設定ファイルを読み込ませます。
$ ls caddyfile index.html md/ $ caddy -conf="./caddyfile"
ブラウザで http://localhost:2015/md
にアクセスしてみてください。
提供方式
Caddyはgo製のアプリケーションです。 以下のプラットフォーム向けにバイナリが提供されています。
導入方法
Ubuntuに導入する方法です。 バイナリをダウンロードしてZIPを解凍するだけなので、他のプラットフォームでも同じような手順で導入できるはずです。
インストール
以下を適当なファイルに保存して実行するとインストールできます。
2016-06-15日現在の最新は v0.7.1
でしたが、新しいバージョンがリリースされている場合は version
変数の値を変更してください。
#!/bin/bash # アプリ名 app="caddy" # バージョン version="v0.7.1" # インストールパス libpath="/opt/${app}/${version}/" # 実行ファイルのパス binpath="/usr/local/bin/" # インストール先のディレクトリを作成 sudo mkdir -p $libpath # ダウンロード cd $libpath sudo wget "https://github.com/mholt/caddy/releases/download/${version}/caddy_linux_amd64.zip" # ダウンロードしたファイルを解凍 sudo unzip caddy_linux_amd64.zip # 実行ファイルへのシンボリックリンクを作成 cd $binpath sudo ln -s "${libpath}/${app}"