サイドバーの壁紙
博主头像
tin博主等级

子の曰わく、我れ三人行なえば必ず我が師を得(う)。其の善き者を択びてこれに従う。其の善からざる者にしてこれを改む。

  • 累積執筆 72 記事
  • 累計作成 32 タグ
  • 累計受入 2 コメント

目 次CONTENT

記事目次

Docker入門から(第3回:Dockerのコマンド)

tin
tin
2023-02-27 / 0 コメント / 2 いいね! / 129 読み / 1,273 文字

背景

Dockerの説明とインストールは終わりましたため、今回はDockerの常用コマンドを紹介します。

3. Dockerのコマンド

3-1. 起動類とヘルプ類

コマンド 機能
systemctl start docker dockerを起動
systemctl stop docker dockerを停止
systemctl restart docker dockerを再起動
systemctl status docker dockerのステータスを確認
systemctl enable docker スタートアップ
docker info dockerの情報を確認
docker --help コマンドマニュアルを全体表示
docker [コマンド名] --help 個別のコマンドマニュアルを表示

3-2. イメージ(image)コマンド

機能 コマンド
docker images ロカールリポジトリのイメージ一覧を表示
docker search [イメージ名] イメージを検索
docker search --limit [数] [イメージ名] 件数制限でイメージを検索
docker pull [イメージ名] リモートリポジトリからイメージをダウンロード
docker system df システム上の Docker リソースのディスク使用状況を表示
docker rmi [イメージ名] イメージを削除、-fを付けたら、強制削除

3-3. コンテナ(container)コマンド

  • ①前提:
    イメージがあること

  • ②コンテナを新規・起動:
    docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
    例:docker run -it --name= myubuntu ubuntu /bin/bash
    OPTIONS一覧:

OPTION 説明
–name=“コンテナの名前” コンテナの名前を指定、指定しないと、ランダムの名前が付けられる
-d バックグラウンドでコンテナを実行
-i –interactiveの略。標準入力をオープンし、コンテナに接続されたシェルに入力を提供する
-t –ttyの略。コンテナ内で擬似 TTY(端末)を作成する。よく-iと一緒に使う
-P 大文字のP。ランダムでportをマッピング
-p 小文字のp。 一番シンプルなのは「-p hostPort:containerPort」

③ほかのコマンド

コマンド 説明
docker ps 実行中の Docker コンテナの一覧を表示
docker start 停止している Docker コンテナを開始
docker stop 実行中の Docker コンテナを停止
docker restart 実行中の Docker コンテナを再起動
docker rm 停止している Docker コンテナを削除
docker kill Dockerコンテナを強制停止
docker logs Docker コンテナのログを表示
docker inspect Docker コンテナの詳細情報を表示
docker exec 実行中の Docker コンテナ内に入る
docker attach 実行中の Docker コンテナ内に入る ※execとattachの違い
docker cp Docker コンテナとホストマシンの間でファイルをコピー

3-4. デモ1(MySQLコンテナの新規とログイン)

  • ①MySQL5.7イメージをリモートリポジトリからpull
    docker pull mysql:5.7
    image-1677589493687

  • ②バックグラウンドでMySQLコンテナを新規起動
    docker run -d -p 3306:3306 --name=mysql-demo -e MYSQL_ROOT_PASSWORD=root mysql:5.7
    image-1677590045668

  • ③execでコンテナに入って、退出
    docker exec -it mysql-demo bash
    image-1677590574679

3-5. デモ2(ubuntuコンテナでdocker execとdocker attachの違いを区別)

Dockerコンテナ内で操作 attachとexecの違いについて、
簡単に言えば:

  • docker exec コマンドは、実行中のコンテナ内で新しいプロセスを開始するために使用されます。

  • 一方、docker attach コマンドはコンテナ内で現在実行されているプロセスの標準入力、標準出力、標準エラー出力に直接アクセスできます。

  • デモ
    image

  • docker ps -aで終了したコンテナを確認できます
    image-1677599877445

  • 個人感想:execとattachのどちらを使うかは個人自由ですが、attachを使ってコンテナ内に行く場合、不注意でexitしたら、コンテナが終了してしまいますので、execをお勧めします。

3-6. デモ3(docker cp:コンテナファイルをコピー)

docker cpを使って、dockerコンテナからファイルをコピーして、ホスト側に貼り付けます。
docker cp [コンテナIDまたはコンテナ名]:[コンテナ内のコピー対象] [ホスト側格納場所]
image-1677846441604

3-7. デモ4(docker exportとimport:コンテナをアーカイブ化)

docker export [コンテナIDまたはコンテナ名] > ファイル名.tar.gz
cat ファイル名.tar.gz | docker import - イメージ名:タグ名

image-1677852334742

3.8. 次の記事へ:Docker入門から(第4回:dockerのイメージとcommit操作)

2
  • 2

コメント欄