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超便利。

\ 最新情報をチェック /

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください。