GNU/Linux >> Linux の 問題 >  >> Panels >> Docker

DockerコンテナにSSHで接続してコマンドを実行する方法

はじめに

Docker は、OSレベルの仮想化を使用してコンテナと呼ばれるパッケージでソフトウェアを配信するPaaS(Platform as a Service)製品のセットです。

Docker は、コンテナを作成できるユーティリティです。 アプリケーションを実行するため。 Dockerコンテナーは、完全に含まれた仮想マシンです。

このガイドでは、DockerコンテナにSSHで接続してコマンドを実行する3つの方法を紹介します。

方法1

  • docker execを使用します Dockerコンテナでコマンドを実行するには

docker exec commandは、すでに実行されているコンテナー内で指定されたコマンドを実行します。

bashシェルを作成することで、DockerコンテナにSSHで接続できます。 。

docker execを使用するための構文

docker exec (options) (container) (The_command)
  • Dockerの画像をプルします まだの場合。 apacheを読み込むことができます 例:
sudo docker pull httpd
  • 次に、コンテナを実行します
sudo docker run --name apache-test -d httpd
  • 実行中のすべてのコンテナを一覧表示して、そのコンテナが一覧表示されているかどうかを確認します
sudo docker ps
  • それにアクセスしてそのコンテナでコマンドを実行するには、を実行します
sudo docker exec -it apache-test /bin/bash

–i オプションは、インタラクティブを指定します

–t ターミナルタイピングを有効にします インターフェイス。

これで、入力したコマンドはすべてそのコンテナで実行されます。

方法2:

  • ドッカーアタッチを使用 実行中に接続するコマンド コンテナ

ドッカーアタッチ コマンドは、ローカル入力、出力、およびエラーストリームをコンテナにリンクします。

  • 実行中のコンテナに接続するには、実行します
sudo docker attach (The_container_Name)

次に、 apache-testに接続します。 次のコマンドラインを使用するコンテナ。

sudo docker attach apache-test

方法3:

  • SSHを使用します Dockerコンテナに接続するには

SSH(Secure Shell)を使用してDockerコンテナに接続できます。

  • sshをインストール、起動、有効化する

CentOSについて

dnf install -y openssh-server openssh-clients && systemctl start sshd && systemctl enable sshd 

Ubuntuの場合

sudo apt-get install ssh && sudo systemctl start sshd && sudo systemctl enable sshd 
  • DockerコンテナのIPアドレスを取得する

docker inspect を使用して、コンテナのIPアドレスを取得します コマンドを実行し、結果を除外します。

最新のDockerエンジンの場合は、実行します

sudo docker inspect -f "{{ .NetworkSettings.IPAddress }}" (The_container_name)

古いDockerエンジンの場合は、実行します

[root@unixcop ~]# docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' (The_container_name)
172.17.0.1
[root@unixcop ~]# 
  • SSHコマンドを使用してコンテナに接続することによるDockerコンテナへのSSH
ssh [email protected]

システムは、そのコンテナのrootユーザーのパスワードを要求する必要があります

これで、コンテナ内でコマンドを実行できます。

結論

だから、それだけです

このチュートリアルでは、実行中のDockerコンテナにSSHで接続し、3つの方法でコマンドを実行する方法を説明します。

ありがとう


Docker
  1. RockyLinux8にDockerContainerをインストールしてセットアップする方法

  2. Dockerコンテナ内でプログラムを実行する方法は?

  3. DockerコンテナでMySQLを実行する方法

  1. DockerコンテナにSSHで接続する方法

  2. Docker コンテナーをバックアップおよび復元する方法

  3. Docker コンテナを一時停止および再開する方法

  1. ホストディレクトリをDockerコンテナにマウントする方法

  2. 実行中のDockerコンテナでコマンドを実行する方法

  3. Dockerコンテナ内でアプリケーションをインストール、実行、削除する方法–パート2