5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS本番環境でよく使うコマンド一覧

Posted at

自分のメモ用です。

#環境
Rails 5.2.4
ruby 2.5.1
capistrano 3.13.0
AWS(EC2)
Web Server Nginx
Application Server Unicorn

#Capistranoを導入後の自動デプロイの手順

###ターミナルからEC2userへログイン

MacBook-Pro ~ % $ cd .ssh/

# ログイン
MacBook-Pro .ssh % ssh -i app名.pem ec2-user@18.000.000.00(IPアドレス)

# リポジトリに移動
[ec2-user@ip-111-11-11-111 ~]$ cd /var/www/app名 

###Nginxの再起動

ターミナル(EC2サーバ)[ec2-user@ip-111-11-11-111 ~]
$ sudo service nginx reload
$ sudo service nginx restart

###MySQL起動

ターミナル(EC2サーバ)[ec2-user@ip-111-11-11-111 ~]
$ sudo service mysqld start

###unicornのプロセスを停止(killコマンド)

ターミナル(EC2サーバ)[ec2-user@ip-111-11-11-111 ~]
$ pgrep -f unicorn
123456
678910
$ kill -9 123456

###自動デプロイ前に念のため、git pull origin master

ターミナル(EC2サーバ)[ec2-user@ip-111-11-11-111 ~]
$ git pull origin master

####git pull origin masterとは、
ローカルリポジトリの状態を追跡ブランチであるorigin/masterにコピー(git fetch)、
masterブランチの追跡ブランチ(origin/master)をローカルのmasterブランチにマージする

ローカルリポジトリがリモートについて

###Capistranoによる自動デプロイ

ターミナル(ローカルPC) アプリのディレクトリで下記を実行
$ bundle exec cap production deploy

###credentials.yml 編集方法

ターミナル(ローカルPC) アプリのディレクトリで下記を実行
$ EDITOR='code --wait' rails credentials:edit

閉じれば、保存される。編集中はTerminal使用不可。

###mysqlをターミナルで操作

$ mysql -u root -p
Passward :  123456
「ユーザ名:root」で接続します、パスワードは後で聞いて という意味

#ログアウト
mysql> exit

#データベース一覧を表示
mysql> show databases;

#使用するデータベースを選択
mysql> use app名_production 

#テーブル一覧を表示
mysql> show tables;

#カラム一覧を表示
mysql> show full columns FROM [テーブル名]; 

#特定のテーブル
mysql> show index FROM [テーブル名]; 

###マイグレーションファイルを変更した場合の本番環境でのコマンド

本番環境のcurrentディレクトリで
[ec2-user@ip-111-11-11-11 current] $ git pull origin master

[ec2-user@ip-111-11-11-11 app]$

#rails db:drop
$ RAILS_ENV=production DISABLE_DATABASE_ENVIRONMENT_CHECK=1 bundle exec rake db:drop

#rails db:create
$ rake db:create RAILS_ENV=production

#rails db:migrate
$ rake db:migrate RAILS_ENV=production

#rails db:seed
$ rake db:seed RAILS_ENV=production

###本番環境のエラー解決
・currentディレクトリでproduction.logの確認

[ec2-user@ip-111-11-11-111 ~]$ ec2サーバーにログイン
$ cd /var/www/app名/current/
$ cd log/
$ tailf production.log

#ログアウト
$ exit

###本番環境で写真が反映されない写真保存先の確認

$cd app/assets/
$cd images/

###環境変数を定義

・本番環境やローカル環境は ~/.bash_profileへ記述
$ vim ~/.bash_profile


・Capistranoを使用し自動デプロイを行う場合、環境変数は/.etc/environmentmに記述
$ vim ~/.etc/environment
$ sudo vi /etc/environment

viコマンド(vimコマンド)リファレンス

###本番環境のエラー表示
config/environments/production.rb

config.consider_all_requests_local = false
↓
config.consider_all_requests_local = true
5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?