B3S
menu close

サーバー関連

目指せ「Dockerチョットデキる!」


きーぼう

公開日:2022/06/24


こんにちは、きーぼうです。
Dockerって、php.iniの設定変更したら影響範囲はどこまで?だったり、
Dockerイメージとは?Dockerファイルとは?などなど
社内の開発環境で利用されているDockerについて不明瞭なことが多かったので調べてみました。

目次

コンテナとDockerについて

コンテナとは?

  • コンピュータの仮想化の方式の一つ
  • 従来の仮想化とは別物
  • アプリとそのミドルウェアをパッケージ化する技術

Dockerとは?

  • 上記のコンテナの実装の1つ
  • Linuxのコンテナ技術をベースにDocker社が開発した仮想化技術
  • 非常に軽量なコンテナ型のアプリケーション実行環境

Dockerの仕様メモ

  • 環境
    • コンテナごとに異なるネットワーク設定
    • コンテナごとに、CPUとメモリーの割当量を制限
  • OS上に論理的な区画分けを作る
  • 仕様
    • 停止すると初期ファイル以外の内容は消える
  • 比較
    • VM=1つのPCの電源をつけてから消すまでをまるごとシュミレーションする。(PCのハードウェア全体を仮想化)
    • コンテナ=service httpd startのような1つのコマンドのみをシュミレーションする

Docker基礎

Dockerの利点

  • VirtualBoxなどの仮想環境より、動作が軽い
  • プラットフォームごとの環境構築の手間を省くことができ、アプリケーション開発そのものに注力できる
  • コンテナイメージをリポジトリ管理できる

Dockerの重要キーワード

  • Dockerfileについて
    • テキスト形式のドキュメント
    • Dockerイメージを構築するための命令が記載されたファイル
    • Dockerのコンテナの設計図
  • Docker Imageについて
    • Dockerfileをビルドしたもの
    • GitHubのようなサービスがDockerにも存在する(DockerHub)。他の人が公開しているイメージを利用することができる

Dockerで利用するコマンド

  • Dockerコンテナを起動する
    • docker run
  • 動いているDockerコンテナの確認
    • docker ps
  • Dockerイメージの確認
    • docker images
  • Dockerイメージをビルド
    • docker build

さわってみた!

ローカル環境で動かしてみる

  1. Windows用のDockerデスクトップをダウンロード
  2. 公式サイト画像

  3. Dockerデスクトップを起動するとWSL 2 installation is incompleteエラー
  4. エラー画像

    1. こちらを参考に進めると解決
  5. チュートリアルを進める
  6. チュートリアルが完了したら、作成したコンテナを起動
  7. docker-desktop画像

    1. http://localhost/tutorial/ にアクセスして表示されればOK
    2. チュートリアル画面

  8. Windows PowerShellで、「docker ps」と打ち、正常に動作していることを確認
  9. コマンド実行結果

  10. 完了

まとめ


簡単ではありますが、Dockerについて調べて使ってみた内容を紹介させていただきました。
理解せずに利用していたDockerについて理解することができました。
まだチョットデキるには足りないので、コンテナのライフサイクルの理解や一人で構築できるまでやってみようと思います。
きーぼう