アプリケーションを設計するとき、それはあなたのマシン上で完全に機能することがありますが、それを本番環境に移行すると、アプリケーションは同じパフォーマンスまたは同じ最適化で機能しません。この苛立たしい経験は、Dockerを使用することで軽減できます。
Dockerは、サーバー、クラウド、またはラップトップ上でアプリケーションを構築、出荷、実行できるオープンソースのコンテナー管理サービスです。さらに、どこにでもデプロイできるコンテナーにアプリケーションを出荷することもできます。
要約すると、Dockerはコンテナー内のアプリケーションプロセスを管理するプロセスを簡素化します。 Dockerは、ホストのオペレーティングシステムに関係なく、どこでもアプリケーションを実行できるため、最近非常に人気があります。
このチュートリアルでは、CentOS8にDockerをインストールして使用する方法を示します。
前提条件
- Atlantic.netクラウドプラットフォーム上の新しいCentOS8VPS。
- サーバーで構成されているrootパスワード。
Atlantic.Netクラウドサーバーを作成する
まず、Atlantic.Netクラウドサーバーにログインします。 2GB以上のRAMを搭載したオペレーティングシステムとしてCentOS8を選択して、新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。
CentOS 8サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。
dnf update -y
Dockerをインストールする
dnf config-manager --add-repo =https://download.docker.com/linux/centos/docker-ce.repo
リポジトリを追加した後、次のコマンドでリポジトリを確認できます。
dnf repolist -v | grep docker
次の出力が得られるはずです:
次に、以下に示すように–nobestオプションを使用して適切なバージョンのDockerをインストールします。
dnf install docker-ce --nobest -y
Dockerをインストールした後、Dockerサービスを開始し、システムの再起動後に開始できるようにします。
systemctl start dockersystemctl enable docker
次に、次のコマンドを使用してDockerサービスのステータスを確認します。
systemctl status docker
次の出力が得られるはずです:
Dockerの基本コマンド
次のコマンドを使用して、インストールされているDockerのバージョンを確認できます。
docker --version
次の出力が得られるはずです:
Dockerバージョン19.03.6、ビルド369ce74a3c
Dockerのシステム全体の情報を確認するには、次のコマンドを実行します。
docker情報
次の画面が表示されます。
次のコマンドを使用して、コンテナに関するすべての情報を確認できます。
dockerは「Container-ID」を検査します
次のコマンドを使用して、dockerコマンドで使用可能なすべてのオプションを表示できます。
docker --help
次の画面が表示されます。
Dockerコンテナをインタラクティブモードで起動します
まず、次のコマンドを使用して、DockerハブリポジトリからUbuntuイメージをプルします。
docker pull ubuntu
次の出力が表示されます。
デフォルトタグの使用:latestlatest:ライブラリからプル/ ubuntu423ae2b273f4:プルcompletede83a2304fa1:プルcompletef9a83bce3af0:プルcompleteb6b53be908de:プルcompleteDigest:sha256:04d48df82c938587820d7b6006f5071dbbffceb7ca01d2814f818
これで、次のコマンドを使用して画像を確認できます。
docker画像次の出力が表示されます。
REPOSITORY TAGIMAGEID作成されたSIZEubuntu8前6c8 a 300次に、ダウンロードしたイメージをインタラクティブモードで使用し、次のコマンドを使用してUbuntuコンテナを起動します。
docker run -it ubuntuコンテナが起動したら、Ubuntuコンテナシェルを取得する必要があります。これで、シェル内でupdateコマンドを実行して、システムを更新できます。
次のコマンドでコンテナを終了できます:
終了次のコマンドを実行して、アクティブなコンテナを一覧表示できます。
docker ps出力:
CONTAINERIDIMAGEコマンド作成済みポート名次のコマンドを実行して、アクティブなコンテナと非アクティブなコンテナの両方を一覧表示できます。
docker ps -a出力:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES96fdc35ac495 ubuntu "/bin/bash" About a minute ago Exited (0) 24 seconds ago stupefied_keller
Dockerコンテナをデタッチモードで起動します
Dockerを使用すると、DockerHubで利用可能なイメージを検索できます。
たとえば、次のコマンドを使用してNginx画像を検索できます。
docker search nginx次の画面が表示されます。
次に、次のコマンドを使用して、Nginxコンテナをダウンロードしてデタッチモードで起動します。
docker run -itd nginxこのコマンドは、Docker HubリポジトリからNginxイメージをダウンロードし、以下に示すようにデタッチモードでコンテナを起動します。
Unable to find image 'nginx:latest' locallylatest:Pulling from library/nginx68ced04f60ab:Pull completec4039fd85dcc:Pull completec16ce02d3d61:Pull completeDigest:sha256:380eb808e2a3b0dd954f92c1cae2f845e6558a15037efefcabc5b4e03d666d03Status:Downloaded newer image for nginx:latest4eeabeb599d079795c1acd4822420c8513f12d6264176ea0685f9028f8bfd014
これで、次のコマンドを使用して実行中のコンテナを確認できます。
docker ps次の出力にNginxコンテナが表示されます:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES4eeabeb599d0 nginx "nginx -g 'daemon of…" 30 seconds ago Up 28 seconds 80/tcp pensive_ptolemyDockerコンテナを管理する
このセクションでは、Dockerコンテナを簡単に管理するのに役立ついくつかの便利なDockerコマンドを紹介します。
Dockerコンテナーを開始するには、次の構文を使用します。
docker start "Container-ID"まず、次のコマンドでコンテナIDを見つけます。
docker ps -a出力:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES4eeabeb599d0 nginx "nginx -g 'daemon of…" 19 minutes ago Exited (0) About a minute ago pensive_ptolemy96fdc35ac495 ubuntu "/bin/bash" 22 minutes ago Exited (0) About a minute前stupefied_keller次に、ID 4eeabeb599d0でコンテナを起動します 以下に示すように:
docker start 4eeabeb599d0次に、次のコマンドで実行中のコンテナを確認します。
docker ps次の出力が表示されます。
docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES4eeabeb599d0 nginx "nginx -g 'daemon of…" 20 minutes ago Up 36 seconds 80/tcp pensive_ptolemy実行中のコンテナーを一時停止するには、次のコマンドを実行します。
dockerは「Container-ID」を一時停止します実行中のコンテナーを停止するには、次のコマンドを実行します。
docker stop "Container-ID"実行中のすべてのコンテナーを停止するには、次のコマンドを実行します。
docker stop $(docker ps -a -q)コンテナを削除するには、最初にコンテナを停止する必要があります。次に、次のコマンドを実行して削除します。
docker rm "Container-ID"停止したすべてのコンテナーを削除するには、次のコマンドを実行します。
docker rm $(docker ps -a -q)Dockerイメージを削除するには、次のコマンドを実行します。
docker rmi "Image-ID"未使用のDockerイメージをすべて削除するには、次のコマンドを実行します。
docker rmi $(docker images -q -a)停止したコンテナとすべての未使用のイメージを削除するには、次のコマンドを実行します。
docker system prune -a次の出力が表示されます。
警告!これにより、以下が削除されます。-停止したすべてのコンテナ-少なくとも1つのコンテナで使用されていないすべてのネットワーク-少なくとも1つのコンテナが関連付けられていないすべてのイメージ-すべてのビルドキャッシュ続行してもよろしいですか? [y/N] yDeleted Containers:4eeabeb599d079795c1acd4822420c8513f12d6264176ea0685f9028f8bfd01496fdc35ac49588aea490833a1ca66387ee9617217ee29715043291db1942b219Deleted Images:untagged:ubuntu:latestuntagged:[email protected]:04d48df82c938587820d7b6006f5071dbbffceb7ca01d2814f81857c631d44dfdeleted:sha256:72300a873c2ca11c70d0c8642177ce76ff69ae04d61a5813ef58d40ff66e3e7cdeleted:sha256:d3991ad41f89923dac46b632e2b9869067e94fcdffa3ef56cd2d35b26dd9bce7deleted:sha256:2e533c5c9cc8936671e2012d79fc6ec6a3c8ed432aa81164289056c71ed5f539deleted:sha256:282c79e973cf51d330b99d2a90e6d25863388f66b1433ae5163ded929ea7e64bdeleted:sha256:cc4590d6a7187ce8879dd8ea931ffaa18bc52a1c1df702c9d538b2f0c927709duntagged:nginx:latestuntagged:example @unixlinux.online:380eb808e2a3b0dd954f92c1cae2f845e6558a15037efefcabc5b4e03d666d03deleted:sha256:a1523e859360df9ffe2b31a8270f5e16422609fe138c1636383efdc34b9ea2d6deleted:sha256:4d5d91d27654e1c0284efbe6617ab628d30f2be44301460f94ca811d0ea14f44deleted:sha256:4245b7ef9b70 e3b2975ed908c7d68ce5f03972d8be702b0ed491e32445b42b8fdeleted:sha256:f2cb0ecef392f2a630fa1205b874ab2e2aedf96de04d0b8838e4e728e28142da合計再生スペース:218.9MB
結論
おめでとう!これで、CentOS 8にDockerが正常にインストールされ、Dockerコンテナをインストールして管理するための十分な知識があります。これで、Dockerを探索し、Atlantic.NetのVPS上のDockerコンテナ内で最初のプロジェクトの開発を開始できます。
Linux