私はドッカーの初心者です。
ubuntu 18.04マシンにコマンドを使用してdocker-ceをインストールしましたSudo apt install docker-ce
チュートリアルの一部として、以下の一連のコマンドを実行してコンテナ間の接続を確立しようとしています。
以下のコマンドは、ポート1234/4321をオンにして、使用するコンテナーの内側/外側のトラフィックをリッスンします。
root@ghost-SVE9999CNS:/home/ghost# docker run --rm -ti -p 1234:1234 -p 4321:4321 --name echo-server ubuntu:18.04 bash
今、私はdocker bashターミナル内でnetcatコマンドを実行したいと思いました。
root@xxxyyyyzzzz12:/# nc -lp 1234 | nc -lp 4321
端末から上記のコマンドをiovkeすると、そのエラーが発生します "nc:command not found"
bash: nc: command not found
bash: nc: command not found
その後、私は十分な調査を行いましたが、この問題に対する公式のドッカーソリューションは見つかりませんでした。
Docker-ce内にnetcatをインストールする手伝いをしてください。
以下のようなコマンドを試しました。
apt-get install netstat
apt-get install nc
しかし、運はありません。
nc
は、デフォルトではubuntu:18.04
イメージにインストールされていないため、インストールする必要があります。
apt-get update && apt-get install -y netcat
apt-get update
は、最初にパッケージのリストを更新するために必要です(コンテナーが開始されたとき、このリストは空です)。完了したら、コンテナからnc -lp 1234
を実行できます。
期待どおりにすべての作品をテストするには、次のようにします。
telnet container_ip 1234
またはtelnet localhost 1234
のようなものから実行します(ポートが転送されているため)