English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Docker Hello World

Dockerはコンテナ内でアプリケーションを実行することができ、 docker run コマンドを通じてコンテナ内でアプリケーションを実行します。

Hello worldを出力します

w3codebox@w3codebox:~$ docker run ubuntu:15.10 /bin/echo "Hello world"
Hello world

各パラメータの解釈:

  • docker: Dockerのバイナリ実行ファイル。

  • run: 前のdockerと組み合わせてコンテナを実行します。

  • ubuntu:15.10 実行するイメージを指定し、Dockerがローカルホスト上にイメージが存在するかどうかを確認し、存在しない場合、DockerはDocker Hubの公共イメージからイメージをダウンロードします。

  • /bin/echo "Hello world": 起動したコンテナ内で実行するコマンド

上記のコマンドの完全な意味は、Dockerがubuntuで15.10 イメージを新しいコンテナに作成し、そのコンテナ内でbinを実行します/echo "Hello world"、その結果を出力します。

インタラクティブなコンテナを実行します

私たちはdockerの二つのパラメータを通じて -i -t、dockerで動作するコンテナに"対話"の機能:

w3codebox@w3codebox:~$ docker run -i -t ubuntu:15.10 /bin/bash
root@0123ce188bd8:/#

各パラメータの解釈:

  • -t: 新しいコンテナ内で仮のターミナルまたはターミナルを指定します。

  • -i: コンテナ内の標準入力(STDIN)に対して対話を許可しています。

注意、第2行の root@0123ce188bd8:/#,その時点で、ubuntu15.10 システムのコンテナ

コンテナ内でコマンドを実行しようとしました。 cat /proc/versionおよびls現在のシステムのバージョン情報と現在のディレクトリのファイルリストを確認します。

root@0123ce188bd8:/#  cat /proc/version
Linux version 4.4.0-151-generic (buildd@lgw01-amd64-043) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.10) ) #178-Ubuntu SMP Tue Jun 11 08:30:22 UTC 2019
root@0123ce188bd8:/# ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@0123ce188bd8:/#

exit コマンドを実行したり、CTRL+D でコンテナを出力します。

root@0123ce188bd8:/#  exit
exit
root@w3codebox:~#

注意、第3行の root@w3codebox:~# これは、現在のコンテナから退出し、現在のホストに戻ることを示します。

コンテナを起動します(バックグラウンドモード)。

以下のコマンドを使用してプロセスとして実行されるコンテナを作成します。

w3codebox@w3codebox:~$ docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
2b1b7a428627c51ab8810d541d759f072b4fc75487eed05812646b8534a2fe63

出力では期待していた「hello world」ではなく、長い文字列が見られました。

2b1b7a428627c51ab8810d541d759f072b4fc75487eed05812646b8534a2fe63

この長い文字列はコンテナ ID と呼ばれ、各コンテナごとにユニークです。コンテナ ID を通じて、対応するコンテナで何が発生したかを確認できます。

まず、コンテナが実行中であることを確認する必要があります。以下で確認できます: docker ps を確認するために:

w3codebox@w3codebox:~$ docker ps
CONTAINER ID          IMAGE                  COMMAND              ...  
5917eac21c36        ubuntu:15.10           "/bin/sh -c 'while t…"    ...

出力詳細の説明:

CONTAINER ID: コンテナ ID。

IMAGE: 使用するイメージ。

COMMAND: コンテナを起動時に実行されるコマンド。

CREATED: CREATED:

コンテナの作成時間。 STATUS:

コンテナの状態。7状態有

  • 種:

  • created(已创建)

  • restarting(重启中)

  • running 或 Up(运行中)

  • removing(迁移中)

  • paused(暂停)

  • exited(停止)

dead(死亡) PORTS:

コンテナのポート情報および使用される接続タイプ(tcp\udp)。 NAMES:

自動的に割り当てられたコンテナ名。

w3codebox@w3ホストマシン内で docker logs コマンドを使用して、コンテナ内の標準出力を確認します: 2b1b7a428627

w3codebox@w3codebox:~$ docker logs

codebox:~$ docker logs amazing_cori

停止コンテナ 私たちは以下を使用しています docker stop コマンドでコンテナを停止します:

docker stop コマンドでコンテナを停止します: 2b1b7a428627

docker ps を使って確認すると、コンテナは停止しています:

w3codebox@w3codebox:~$ docker ps

コンテナは存在しなくなりました。

以下のコマンドでも停止できます:

w3codebox@w3codebox:~$ docker stop amazing_cori