Docker:【チュートリアルやってみた】基本編

2ページ目

Dockerコンテナ確認コマンド

実行中のコンテナの確認

sudo docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
  • コンテナではなくDocker自体に問い合わせるコマンド
  • 実行中のコンテナがあれば出力される
  • 結果考察
    • ヘッダのみ出力された
    • 現在実行中のコンテナはない

これまでに実行したコンテナの確認

sudo docker ps -a
CONTAINER ID   IMAGE         COMMAND                  CREATED             STATUS                         PORTS     NAMES
114c9f74f04e   alpine        "echo 'hello from al…"   10 minutes ago      Exited (0) 10 minutes ago                gracious_galois
990f27013637   alpine        "ls -l"                  20 minutes ago      Exited (0) 20 minutes ago                vibrant_villani
be19cc34d51b   hello-world   "/hello"                 About an hour ago   Exited (0) About an hour ago             condescending_almeida
  • 「-a」オプション
    • 実行が終わったコンテナを表示する
  • 結果考察
    • これまでに実行されたコマンドが一覧表示された
    • COMMAND列を見ると、先ほど実行した「ls -l」「echo …」があるのが分かる

コンテナに入ってコマンドを実行する

やりたいことの説明

  • 前項では1つのコマンドのみを実行した
  • 実行が終わるとコンテナが閉じられ、使い終わったコンテナとして履歴に残る
  • それならば、コンテナを開いてコマンドを実行できないか?を試す
    • Alpine Linuxへのログインのようなこと

うまくいかない例

sudo docker run alpine /bin/sh
  • ここでトライしようとしたことは、コンテナでshellを起動すること
  • shellを起動すればそのshellに対して続けてコマンドを実行できるかも?
  • しかし、
    • 何も出力されない
    • これは正しい動き
  • 結果考察
    • 1.alpineに入る
      2.引数何もなしでshellを実行
      3.戻ってきている
    • そのため、出力がないのは当たり前

うまく行く例(「-it」を使う)

lsコマンド実行

sudo docker run -it alpine /bin/sh
ls
bin    dev    etc    home   lib    media  mnt    opt    proc   root   run    sbin   srv    sys    tmp    usr    var
  • 引数に「-it」が付いている
    • 「-i」と「-t」を合体させている
    • こんな表記ができるのも特徴
  • 結果考察
    • プロンプトが切り替わった
    • 通常の(頭にdocker runを付けない)コマンドが実行できている

他のコマンドも試す

uname -a
Linux a7ee4ecb8865 5.10.60.1-microsoft-standard-WSL2 #1 SMP Wed Aug 25 23:20:18 UTC 2021 x86_64 Linux
  • 動きを再確認
    • WindowsにWSL2がいて
    • そこにUbuntuがインストールされて
    • Dockerコンテナとして実行されたAlpine Linux
    • shellコマンドを実行している
  • 結果考察
    • 5.10.60.1-microsoft-standard-WSL2
      • Linuxカーネル(今の環境はWSL2)

次はチュートリアル(Web編)

  • 記事の概要
    • Webページを実行することのできるサンプルイメージを使う
    • コンテナの停止、実行履歴削除の操作方法
    • Webサーバーの機能を持ったコンテナでWebページを表示

リファレンス

Posted by futa