unicorn のプロセスを終了させる
下記のコマンドを実行する。
kill -QUIT `cat tmp/pids/unicorn.pid`
- unicorn の親プロセスの ID は
tmp/pids/unicorn.pid
に保存されている。
親プロセスのプロセスIDを調べる
ps alx
コマンドで表示される PPID が親のプロセスIDを示す。
unicorn の起動コマンド
bundle exec unicorn_rails -c config/unicorn.rb -E development -D
-c
: コンフィグファイルのパスを指定する。
-E
: Rails の環境を指定する。この場合は development
環境となる。
-D
: バックグラウンドで実行する。
指定した名前のDockerコンテナが存在すればdocker stopコマンドを実行する
sudo docker ps -a --filter "name=app" | awk 'BEGIN{i=0}{i++;}END{if(i>=2)system("sudo docker stop app")}'
--fileter "name=app"
はdocker ps -a
の結果の中からコンテナ名がapp
であるものだけを表示するオプション。sudo docker ps -a --filter "name=app"
で出力された行数を awk でカウントし、2行以上であればapp
コンテナが存在するものとしてsudo docker stop app
を実行する。
全てのDockerイメージを削除する
sudo docker images -q | xargs sudo docker rmi
全てのDockerコンテナを削除する
sudo docker ps -aq | xargs sudo docker rm
- コンテナは停止している必要がある。
-a
オプションは全てのコンテナを表示する。-q
オプションはコンテナIDのみを表示する。
Capistrano のタスク間で共有できる変数
set :hoge, capture("pwd")
変数 hoge
に capture("pwd")
の実行結果が格納される。この hoge
は別のタスクからでも fetch(:hoge)
と書くとアクセスすることができる。