目次
- 導入編
- サンドボックス編
- コマンドラインから配信編
#概要
パソコン上に作成した仮想マシンに自動インストールした静的出力型のCMSから生成したコンテンツをAWS S3にアップロードする
#特徴
- だれでも簡単に、CMSを使ったサイト運用環境を手に入れられる
- CMSサーバと公開サーバを分けることでコストを最小化出来る
- ターミナルソフト、FTPソフトどちらも不要
#潔さ
- 石ころを積み重ねたセキュリティ(PCの紛失盗難だけには注意)
- 原石を磨かない美意識(user名、database名等は初期設定のまま)
#動作環境
- Windows/Mac(Windows環境しか動作確認していません)
- VirtualBoxインストール済
- Vagrantインストール済
#用意するもの
- Movable Typeのソフトウェア(商用ソフトなのでライセンスは遵守する)
- AWSアカウント
#手順
##仮想マシンの作成
自分のパソコンの任意の場所に「MT」というフォルダを作成する。
例:C:\Users\username\MT
コマンドプロンプトを立ち上げて「MT」フォルダに移動する
$ cd MT
仮想マシンを立ち上げる
$ vagrant init chef/centos-6.5
$ vagrant up
※仮想マシンの立ち上げ時にSSHが通らない場合はこちらを参照
##自動インストールに必要なファイルの設置
「MT」フォルダ内に次の3つのファイルを設置する
- MovableTypeのZIPファイル
- provision.sh(下記、provision.sh内の内容をすべてコピーして、メモ帳等のテキストエディタに貼り付けて、ファイル名「provision.sh」で保存)
#!/bin/sh
sudo yum install -y unzip
# Perl
sudo yum -y install perl
sudo yum -y install perl-CGI
# Apache
sudo yum -y install httpd
echo "AddHandler cgi-script .cgi .pl" >> /etc/httpd/conf/httpd.conf
# MySQL
sudo yum -y install mysql-server
mysql -u root mysql -e "GRANT ALL PRIVILEGES ON *.* TO root@'%';"
echo "[client]" >> /etc/my.cnf
echo "default-character-set = utf8" >> /etc/my.cnf
echo "[mysqld]" >> /etc/my.cnf
echo "character-set-server = utf8" >> /etc/my.cnf
# Perl Module
sudo yum -y install netpbm*
sudo yum -y install perl-YAML
sudo yum -y install cpan
yes '' | cpan -i CGI
yes '' | cpan -i Image::Size
yes '' | cpan -i IPC::Run
yes '' | cpan -i File::Spec
yes '' | cpan -i CGI::Cookie
yes '' | cpan -i LWP::UserAgent
yes '' | cpan -i DBI
yes '' | cpan -i DBD::mysql
# Movable Type
sudo mkdir /var/www/cgi-bin/mt
unzip /vagrant/MT-*.zip
sudo cp -r /home/vagrant/MT-*/mt-static/ /var/www/html/
sudo cp -r /home/vagrant/MT-*/* /var/www/cgi-bin/mt/
sudo cp -r /home/vagrant/MT-*/*/ /var/www/cgi-bin/mt/
sudo rm -rf /home/vagrant/MT-*/
sudo cp /vagrant/mt-config.cgi /var/www/cgi-bin/mt
sudo chmod 755 /var/www/cgi-bin/mt/*.cgi
sudo chmod 777 /var/www/html/
sudo chmod 777 /var/www/html/mt-static/support/
# iptables
service iptables stop
chkconfig iptables off
# service
sudo chkconfig mysqld on
sudo chkconfig httpd on
# timezone
cp /usr/share/zoneinfo/Japan /etc/localtime
echo "TZ=Japan" >> /etc/sysconfig/httpd
echo "export TZ" >> /etc/sysconfig/httpd
# daemon restart
/etc/init.d/httpd restart
/etc/init.d/mysqld restart
- mt-config.cgi
Movable Type Configuration File
##
## This file defines system-wide
## settings for Movable Type. In
## total, there are over a hundred
## options, but only those
## critical for everyone are listed
## below.
##
## Information on all others can be
## found at:
## http://www.movabletype.jp/documentation/config
#======== REQUIRED SETTINGS ==========
CGIPath /cgi-bin/mt/
StaticWebPath /mt-static/
StaticFilePath /var/www/html/mt-static
#======== DATABASE SETTINGS ==========
ObjectDriver DBI::mysql
Database test
DBHost localhost
#======== MAIL =======================
EmailAddressMain noreply@example.com
MailTransfer sendmail
SendMailPath /usr/lib/sendmail
DefaultLanguage ja
ImageDriver NetPBM
例:
C:\Users\username\MT\MT-6_1_2.zip
C:\Users\username\MT\provision.sh
C:\Users\username\MT\mt-config.cgi
###パソコン/仮想マシン間の共有フォルダを作成する
「MT」フォルダ内に「www」フォルダを作成し、更にその下に「html」フォルダを作る
- フォルダ名:\www\html
例:C:\Users\username\MT\www\html
仮想マシン起動時に、自動的に「MT」フォルダ内に生成された「Vagrantfile」をメモ帳等で開き以下をend行の前に追記する
Vagrant.configure(2) do |config|
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.synced_folder "../MT/www/html", "/var/www/html"
config.vm.provision :shell, :path => "provision.sh"
end
仮想マシンを再起動する
$ vagrant reload
##プロビジョニングの開始
MovableTypeほかライブラリの自動インストールを始める
$ vagrant provision
~10分以上掛かるので、鼻くそほじりながら待つ~
インストールが終わる
##MovableTypeの初期設定とサイトの構築
管理画面にアクセスする
http://192.168.33.10/cgi-bin/mt/mt.cgi
「アカウントの作成」画面が表示されるので適当なアカウントを作成しログインする
とりあえずテキトー記事を1つ投稿して、再構築ボタンをクリックする
##AWS S3にアップロード
「MT」フォルダの\www\html\フォルダ以下のファイル及びフォルダをS3の管理画面からアップロードする
例:C:\Users\username\MT\www\html\index.htmlほか
アップロード方法はAmazon S3 での静的ウェブサイトのホスティングで確認する
S3でホスティング?って人は[月額10円~でレンタルサーバーを始める方法] (https://aws.amazon.com/jp/s3-hosting/)を確認する
S3側の表示で404,403エラーが出る場合は、こちらを参照
仮想マシンをシャットダウンする
$ vagrant halt
##後日、サイトを更新する
コマンドプロンプトから
$ cd MT
$ vagrant up
仮想マシンが立ち上がってから管理画面にアクセスする