LoginSignup
0
0

More than 1 year has passed since last update.

Docker構築したことないエンジニアが基本知識をつける

Last updated at Posted at 2021-07-18

概要的なところ

  • データやプログラムをOSごと隔離できる仕組み
  • docker engineでコンテナを作成、使用できる
  • イメージ=コンテナの元
  • Linux OSが必須、理由はLinux上で動かすものだから
  • コンテナの中は空ではなく「Linux OS的なの」が入っている
  • 元のもの=イメージ、イメージから作る実際に動いているもの=コンテナ
  • 逆にコンテナからイメージを作ることもできる
  • イメージは自分でつくることはない、Docker Hub(https://hub.docker.com/2ww2szxswx3)が提供してくれている
  • 一つのコンテナに一つのアプリ
  • 長く大事に使うのではなく、使ったら捨てるを繰り返すことが大事
  • dockerをインストールしている物理的なマシンのディスクにマウントする
  • コンテナのライフサイクル 作成ー>起動ー>停止ー>削除ー>作成

メリット

  • 複数のコンテナに同じプログラムを入れることができるので、バージョンの影響がでない
  • 通常であれば一つのサーバに一つのWEBサーバしか置けないけど、隔離することで複数置くことができる
  • コンテナは持ち運ぶことができる

Dockerの基礎知識まとめ

  • docker-compose up -d で起動
  • docker-compose stop で停止
  • コマンド基本形=docker コマンド (オプション) 対象(引数)
  • バージョン確認 docker version
  • pull、create、startを同時にできるのがrun
  • docker container stop 停止
  • docker container rm 削除
  • コンテナを破棄するためには停止させる必要がある
  • docker ps コンテナの一覧を表示できる
  • docker image rm イメージ名 イメージの削除
  • docker image ls イメージの一覧表示
  • docker network create ネットワーク名 ネットワーク作成
  • docker network rm ネットワーク名 ネットワーク削除
  • docker cp コピー元パス コピー先のコンテナ名:コンテナ側パス

コンテナのイメージ化(2種類ある)

①commitコマンドで書き出す
docker commit コンテナ名 作成するイメージ名
②docketfileでイメージを作成する

Docker composeとは

  • 構築に関わるコマンドの内容を1つの定義ファイルに書き込んで、一気に実行することができる
  • 定義ファイル「YAML」を用意し、そのファイルを「up」したり、「down」したりする。
  • dockerファイルはイメージをつくるもので、ネットワークやボリュームを作成できない。
  • 定義ファイルは「docker-compose.yml」と決まっている
  • 定義ファイルは一つのフォルダに一つのみ。
  • 複数の定義ファイルを使いたい場合は、フォルダを複数用意する

Kubernetes(クーべネティス)とは

  • コンテナのオーケストレーションツールのこと
  • k8sとも書く
  • オーケストレーションツールとは複数のコンテナを管理できるツールのこと
  • 複数の物理的なマシンを使用し、1台のサーバに複数のコンテナを扱うことが前提
  • その時に毎回docker comoseを叩くのは大変なのでその煩雑さを上手くやってくれるツールのこと
0
0
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
0
0