RHELでのRuby on Railsアプリケーションのデプロイ手順
Ruby on RailsアプリケーションをRHEL環境でデプロイする手順を詳しく説明します。必要な環境構築からサーバー設定まで、実際に動作するアプリケーションを構築するためのプロセスをカバーします。
目次
RHELの初期設定と必要なパッケージのインストール
システムを最新状態に更新します。
sudo yum update -y
sudo yum install -y git curl wget gcc makeRubyのインストール
RVMまたはrbenvを使用してRubyをインストールします。以下はRVMを使用する例です。
sudo yum install -y curl gpg
gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -sSL https://get.rvm.io | bash -s stable
source /etc/profile.d/rvm.sh
rvm install ruby
ruby -vRailsのインストール
Railsをインストールしてバージョンを確認します。
gem install rails
rails -vデータベースのセットアップ
PostgreSQLを例にしてインストールと設定を行います。
sudo yum install -y postgresql-server postgresql-devel
sudo postgresql-setup initdb
sudo systemctl enable postgresql
sudo systemctl start postgresql
sudo -i -u postgres psql -c "CREATE USER app_user WITH PASSWORD 'password';"
sudo -i -u postgres psql -c "CREATE DATABASE app_db OWNER app_user;"Node.jsとYarnのインストール
Railsで必要なJavaScriptランタイムとパッケージマネージャーをインストールします。
curl -sL https://rpm.nodesource.com/setup_16.x | sudo bash -
sudo yum install -y nodejs
curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo yum install -y yarnRailsアプリケーションの作成
新しいRailsプロジェクトを作成します。
rails new myapp -d postgresql
cd myapp
bundle installデータベースの接続設定
`config/database.yml`を編集してPostgreSQLの設定を記載します。
default: &default
adapter: postgresql
encoding: unicode
host: localhost
username: app_user
password: password
pool: 5
development:
<<: *default database: app_dbデータベースのマイグレーション
データベースを作成しマイグレーションを適用します。
rails db:create
rails db:migratePumaアプリケーションサーバーの設定
Pumaを使用してRailsアプリケーションを起動します。
bundle exec puma -C config/puma.rbNginxのインストールと設定
Nginxをリバースプロキシとして設定します。
sudo yum install -y nginx
sudo systemctl enable nginx
sudo nano /etc/nginx/conf.d/myapp.conf設定ファイル例:
server {
listen 80;
server_name your_domain.com;
root /path/to/myapp/public;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}設定をテストしてNginxを再起動します。
sudo nginx -t
sudo systemctl restart nginxRailsアプリケーションのデプロイ
本番環境用のプリコンパイルと起動を行います。
RAILS_ENV=production bundle exec rake assets:precompile
RAILS_ENV=production rails serverSSLの導入
Let’s Encryptを使用してHTTPSを有効化します。
sudo yum install -y certbot
sudo certbot --nginx -d your_domain.com
sudo systemctl reload nginxログと監視の設定
ログを確認し、システムの安定性を監視します。
tail -f log/production.logまとめ
RHELでのRuby on Railsアプリケーションのデプロイは、適切なツールと設定を活用することで効率的に行えます。セキュリティやパフォーマンスを考慮して、運用環境に合わせた調整を行ってください。
-
前の記事
java HashMapに値を追加する 2024.12.04
-
次の記事
Red Hat Enterprise LinuxのDocker Swarmによるコンテナオーケストレーション 2024.12.05
コメントを書く