概要
最近Drupalを良く聞くようになったのでAWSの無料枠を駆使して雛形サイトを構築する
Amazon EC2(t2.micro)
-RancherOS HVM
AWSMarketplaceでRancherでググると出てきます。
※ベンダーの推奨スペックとしてはt2.small以上とのこと
今回は無料枠で行くので逆らってmicroです。
ちなみにRancherOSはRancherとは異なります!
RancherOS自体はコンテナ管理に特化した超軽量OSになります。
なんとOSイメージそのものは40MBほどのサイズです。
セキュリティグループ
RancherOSでインスタンスを作ると自動で下記のようなセキュリティグループができる
インバウンドの設定でTCP8080を追加しておくこと
-RancherOS - HVM~~
Docker
-使用コンテナ
開発用途としては微妙らしいのでガッツリ開発したい、って人は別の方法のほうがいいです。
下準備
EC2
いかんせんt2.microなのでリソースが常に枯渇の危機、少しでもマシにするため小細工します。
sudo vi runcmd.yaml
runcmd:
- sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
- sudo chmod 600 /swapfile
- sudo mkswap /swapfile
- sudo swapon /swapfile
sudo ros config merge -i runcmd.yaml
何をやっているかというと2Gのswap領域を作ってOS側でswapを使うように設定しているのですが、
RancherOSで環境もろもろのことを変更するにはros configコマンドで設定変更しないといけません。
runcmd.yaml内にOS起動時にswapの有効化を行う指示を書き
ros config merge コマンドで環境設定に反映しています。
↑これを行ったら一度インスタンスを再起動してみてください。
再度立ち上がった後 swapon -s コマンドを入力してやればswapが有効になっていることがわかるはずです。
本題
SSH接続でインスタンスに入る。※他のOSと違ってユーザーは[rancher]なので注意!
下記のコマンドを叩くだけ
docker run --name some-drupal -p 8080:80 -d drupal
http://{{パブリックIP}}:8080 で接続できる
うまくつながらない場合はセキュリティグループの設定を見直して
こんな感じの画面が表示されていたらOKです。
後は画面の手順に従って初期インストールを行ってください。
SQLite以外のDBを使う場合はこれとは別にDBのが必要です。