LoginSignup
3
7

More than 1 year has passed since last update.

Amazon Linux環境でSupervisorを使ってLaravel Queueを動作させる方法

Posted at

この記事は私自身のmediumにも記載されています。
Laravel Queue work with supervisor on AWS EC2

1. Supervisorをインストールする

Amazon レポジトリーにはsupervisorが入っておりません。

なのでepelレポジトリーを使ってインストールする必要があります。

sudo yum --enablerepo=epel install supervisor

2. supervisorをスタート

sudo service supervisord start

Redirecting to /bin/systemctl start supervisord.serviceこのメッセージが表示されたらインストール成功です。

3. supervisor設定ファイル修正

supervisorにworkerを追加するため、設定ファイルを修正します。

sudo vi /etc/supervisord.conf

下記を追記しましょう。

[program:worker]
command=php /project-home/artisan queue:work
process_name=%(program_name)s_%(process_num)02d
numprocs=2
autostart=true
autorestart=true
user=root
redirect_stderr=true
stdout_logfile=/project-home/storage/logs/worker.log

worker.logファイルをログパスに追加することを忘れないでください。

touch /project-home/storage/logs/worker.log

4. supervisor設定ファイルの読み込み

修正された設定ファイルを読み込ませるため、下記コマンドを実行します。

sudo supervisorctl reread

正しく入力したら、このようなメッセージが表示されます。

worker: available

5. supervisor再起動

設定を適用させるためにsupervisorを再起動しましょう。

sudo service supervisord restart

workerが動作されているのか確認しましょう。

sudo supervisorctl status

下記のようなメッセージが表示されます。pidとuptimeは私のメッセージと違うはずです。

worker:worker_00 RUNNING pid 1043936, uptime 0:00:10
worker:worker_01 RUNNING pid 1043937, uptime 0:00:10

6. supervisorをインスタート再起動時にスタートするように設定する

sudo chkconfig supervisord on

終わり!

3
7
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
3
7