このチュートリアルでは、MariaDB、Puma、Nginxを使用してUbuntu14.04VPSにPublifyをインストールする方法を説明します。 Publifyは、シンプルですがフル機能のオープンソースWebパブリッシングソフトウェアです。 PublifyはRubyonRailsフレームワーク上に構築されており、現存する最も古いRailsオープンソースプロジェクトです。このガイドは他のLinuxVPSシステムでも機能するはずですが、Ubuntu14.04VPS用にテストおよび作成されています。
SSH経由でVPSにログイン
ssh user@vps
システムを更新し、必要なパッケージをインストールします
[user]# sudo apt-get update && sudo apt-get -y upgrade [user]# sudo apt-get install software-properties-common imagemagick build-essential git openssl nano
MariaDB10.1をインストールします
[user]# sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db [user]# sudo add-apt-repository 'deb [arch=amd64,i386] http://mirrors.accretive-networks.net/mariadb/repo/10.1/ubuntu trusty main' [user]# sudo apt-get update [user]# sudo apt-get install mariadb-server libmariadbclient-dev>
インストールが完了したら、次のコマンドを実行してインストールを保護します。
[user]# sudo mysql_secure_installation
次に、Publifyインストール用のデータベースを作成する必要があります:
[user]# mysql -uroot -p MariaDB [(none)]> CREATE DATABASE publify CHARACTER SET utf8; MariaDB [(none)]> GRANT ALL PRIVILEGES ON publify.* TO 'publify'@'localhost' IDENTIFIED BY 'publify_passwd'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
ユーザーを公開する
Publifyの新しいシステムユーザーを作成します。
[user]# sudo adduser --home /opt/publify --shell /bin/bash --gecos 'Publify publishing software' publify [user]# sudo install -d -m 755 -o publify -g publify /opt/publify [user]# sudo usermod -a -G sudo publify [user]# sudo su - publify
RVMを使用してRubyをインストールする
次のコマンドは、publifyユーザーとして実行されます。
[publify]# cd [publify]# curl -sSL https://rvm.io/mpapis.asc | gpg --import - [publify]# curl -sSL https://get.rvm.io | bash -s stable --ruby [publify]# rvm install ruby-2.1.5
RVMの使用を開始するには、次のコマンドを実行します。
[publify]# source ~/.rvm/scripts/rvm
すべてが正しく行われたことを確認するには、コマンドruby --version
を使用します 。
出力は次のようになります。
[publify]# ruby --version ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]
Publifyのインストール
次のコマンドを使用して、githubからPublifyの最新リリースのクローンを作成します。
[publify]# cd && git clone https://github.com/publify/publify.git
[publify]# git checkout v8.2.0
database.yml.mysqlをdatabase.ymlとしてコピーします
[publify]# cp ~/publify/config/database.yml.mysql ~/publify/config/database.yml
database.yml
を開きます ファイルとユーザー名/パスワードの更新
[publify]# vim ~/publify/config/database.yml
production: login: &login adapter: mysql2 host: localhost username: publify password: publify_passwd
新しいPuma構成ファイルを作成します。
[publify]# nano ~/publify/config/puma.rb
#!/usr/bin/env puma application_path = '/opt/publify/publify' directory application_path environment 'production' daemonize true pidfile "#{application_path}/tmp/pids/puma.pid" state_path "#{application_path}/tmp/pids/puma.state" stdout_redirect "#{application_path}/log/puma.stdout.log", "#{application_path}/log/puma.stderr.log" bind "unix://#{application_path}/tmp/sockets/publify.sock"
[publify]# mkdir -p ~/publify/tmp/{pids,log,sockets}
Gemsをインストールする
[publify]# cd ~/publify [publify]# echo "gem 'puma'" >> Gemfile [publify]# echo "gem: --no-ri --no-rdoc" >> ~/.gemrc [publify]# RAILS_ENV=production bundle install --without development test postgresql sqlite
データベースを準備し、アセットをコンパイルします
[publify]# RAILS_ENV=production rake db:setup [publify]# RAILS_ENV=production rake db:migrate [publify]# RAILS_ENV=production rake db:seed [publify]# RAILS_ENV=production rake assets:precompile>
アップスタートスクリプトを作成する
[publify]# sudo nano /etc/init/publify.conf
description "Puma Publify Service" start on filesystem or runlevel [2345] stop on runlevel [!2345] setuid publify setgid publify respawn respawn limit 3 30 script exec /bin/bash << EOT source /opt/publify/.rvm/scripts/rvm cd /opt/publify/publify exec puma -C config/puma.rb EOT end script
これで、次のコマンドでPublifyサービスを開始できます:
[publify]# sudo service publify start
Nginxのインストールと構成
最新バージョンのNginx1.8は、デフォルトのUbuntuリポジトリからは入手できないため、「nginx / stable」PPAを追加し、システムを更新して、nginxパッケージをインストールします。
[user]$ sudo add-apt-repository ppa:nginx/stable [user]$ sudo apt-get update [user]$ sudo apt-get install nginx
次のコンテンツで新しいNginxサーバーブロックを作成します
[publify]# sudo nano /etc/nginx/sites-available/publify.domain.com
upstream publify { server unix:/opt/publify/publify/tmp/sockets/publify.sock; } server { server_name publify.domain.com; root /opt/publify/publify; location / { try_files $uri @ruby; } location @ruby { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_read_timeout 300; proxy_pass http://publify; } }
シンボリックリンクを作成してサーバーブロックをアクティブ化し、Nginxを再起動します:
[user]# sudo ln -s /etc/nginx/sites-available/publify.domain.com /etc/nginx/sites-enabled/publify.domain.com [user]# sudo service nginx restart>
それでおしまい。これで、UbuntuVPSにPublifyが正常にインストールされました。 Publifyの詳細については、PublifyのWebサイトを参照してください。
もちろん、Linux VPSホスティングサービスのいずれかを使用している場合は、これを行う必要はありません。その場合は、専門のLinux管理者にセットアップを依頼するだけです。 24時間年中無休でご利用いただけます。リクエストはすぐに処理されます。
PS 。この投稿が気に入った場合は、左側のボタンを使用してソーシャルネットワーク上の友達と共有するか、下に返信を残してください。ありがとう。