Dockerコンテナの自動起動が超簡単だった件
Dockerコンテナの自動起動が超簡単だった件
色々と組みあがってきたので、Dockerを収めたサーバーを再起動してみました。
すると...サイトが立ち上がらない。
と言う事で、Dockerコンテナの自動起動について備忘録です。
自動起動の設定方法
これが驚くほど簡単で『docker-compose.yml の各イメージに1文加えるだけ』です。
restart: always
事前に仕掛けて置けばシステムコピーで「ヤバイ、やり忘れた!」という事が無いと。
優秀だ。
$ sudo vim docker-compose.yml
version: '3'
services:
web:
image: nginx:1.15.6
container_name: NGINX
ports:
- "8000:80"
depends_on:
- app
volumes:
- ./docker/web/default.conf:/etc/nginx/conf.d/default.conf
- .:/var/www/html
#自動起動設定
restart: always
app:
container_name: PHP
build: ./docker/php
depends_on:
- mysql
volumes:
- ./docker/app/php.ini:/usr/local/etc/php/php.ini
- .:/var/www/html
#自動起動設定
restart: always
自動設定を仕掛けた時の注意点
docker-compose.yml に restart: always を書き込むだけでは再起動しても自動起動してくれません。
何故か。
ただ書いただけでは、作成されたイメージに自動起動が仕込まれていないからです。
その為、再起動の前に以下コマンドでイメージをリビルドします。
$ sudo /usr/local/bin/docker-compose up -d
もちろん、Docker事態に自動起動が仕込まれていないとダメなので、上手くいかない時はDocker自身の自動起動も確認しましょう。
Dockerサービスの自動起動設定
$ sudo systemctl enable docker
まとめ
ヤバい、Docker超便利。


