WordPressの高速実行環境として名高いKUSANAGIですが、実は普通のLAMPマシンとして動かすこともできます。Markdown大好きな私としては、ヒアドキュメントでいい感じにマークアップしてくれる環境はないものかと思案していたところ、PicoというDB不使用かつ軽量な素敵CMSを発見。さくらのクラウド KUSANAGI環境にインストールしてみました。
Windows 10 のメモ帳でつくる Kindle 本: Markdown 記法で書く電子書籍
■ kusanagiをlampとしてプロビジョニングする
いつものように、KUSANAGIサーバーを建てたあとのyum updateを行います。
yum --enablerepo=remi,remi-php56 update -y reboot
再起動後、kusanagiユーザーでログインし直すまでは環境変数祭りなので根気よく1行1行コンソールからペーストします。気が向いたらスタートアップスクリプトを書くのもよいでしょう。
KUSANAGI_PW=RN82R5TE3GTELQN2Q3EMDETDDDFRM3M8 DBROOT_PW=7N2EHRNTL4MM84LLELLRTD8E22DT5GE2 FQDN=pico.example.com KUSANAGI_PROFILE=${FQDN} KUSANAGI_DBNAME=pico KUSANAGI_DBUSER=pico KUSANAGI_DBPW=DETNRDET3HRHEHE8MMDQTNH8RMBNR4MB ADMINGROUP_ID=nullpopopo ADMINUSER_ID=nullpopopo ADMINUSER_PW=H7N2EF8QGRRRFDTFMQEDGDTLMANENEMH ADMINUSER_AUTHKEY="ssh-rsa AAAAB(略)==" kusanagi init --tz tokyo --lang ja --keyboard ja --passwd ${KUSANAGI_PW} --nophrase --dbrootpass ${DBROOT_PW} --httpd --php7 kusanagi provision --lamp --noemail --fqdn ${FQDN} --dbname ${KUSANAGI_DBNAME} --dbuser ${KUSANAGI_DBUSER} --dbpass ${KUSANAGI_DBPW} ${KUSANAGI_PROFILE} groupadd -g 500 ${ADMINGROUP_ID} useradd -g 500 -u 500 ${ADMINUSER_ID} echo ${ADMINUSER_PW} | passwd --stdin ${ADMINGROUP_ID} echo -e "${ADMINUSER_ID}\t\tALL=(ALL)\t\tNOPASSWD: ALL" | tee /etc/sudoers.d/${ADMINUSER_ID} mkdir -p /home/${ADMINUSER_ID}/.ssh echo ${ADMINUSER_AUTHKEY} | tee /home/${ADMINUSER_ID}/.ssh/authorized_keys chown -R ${ADMINUSER_ID}. /home/${ADMINUSER_ID}/.ssh chmod -R go-rwx /home/${ADMINUSER_ID}/.ssh cp -p /etc/ssh/sshd_config{,.ORIG} echo -e "\nAllowUsers ${ADMINUSER_ID} kusanagi@127.0.0.1" | tee -a /etc/ssh/sshd_config systemctl restart sshd
上記コマンドでは、kusanagi init、kusanagi provisionをしてから、管理者ユーザー nullpopopo を作成してNOPASSWDでsudoできるようにしています。ことのついでに、kusanagiユーザーとして外部ホストからsshできないようにしてsshdを再起動しています。
ちなみに、kusanagiのプロビジョニングのオプションでDB関連は省略できず・・・なので、無駄にデータベースができてしまうのですが、まあ、LAMPだからね。仕方ないね。
■ Picoインストール
管理者ユーザーとしてsshログイン後、 sudo su - kusanagi でkusanagiユーザーにスイッチします。インストールの手順は公式のドキュメント通りで非常に簡単です。
cd /home/kusanagi/*/DocumentRoot/ git clone https://github.com/picocms/pico.git . curl -sS https://getcomposer.org/installer | php php composer.phar install cp -pr content-sample content cd /home/kusanagi/*/DocumentRoot/content mv index.md{,.ORIG}
それでは早速ヒアドキュメントでMarkDownを生成しましょう。
cat << _EOL_ | tee index.md # これは見出しである ## これは小見出しである 1. 項目 1. 項目 1. 項目 日本語だってきっと書ける |ハンドル|本名| |:----|:----| | (っ´∀`)っ ゃー | ぬるぽぽぽ | [トップページ](http://pico.example.com/) _EOL_
それではブラウザで見てみましょう。
ね、簡単でしょう?
[amazonjs asin="4774182702" locale="JP" title="Atom実践入門──進化し続けるハッカブルなエディタ (WEB+DB PRESS plus)"]