docker実行時に異なるポートを占有する2つのポートを起動する問題を解決する

docker実行時に異なるポートを占有する2つのポートを起動する問題を解決する

問題の説明:

docker run -p 19918:19918/tcp -v /etc/localtime:/etc/localtimeを実行した後

Docker ps では、ポート 19918 と別のポートが開始されており、レジストリに実行プログラムが見つからないことが示されています。

問題分析:

起動した他のポートは以前に構成されていました。実行中にビルドされたプロジェクトに加えて、以前のコンテナが実行されたと推測されます。

解決:

Docker イメージ内のコンテナを表示し、同じコンテナと実行された 2 つのポート コンテナを削除します。もう一度実行すると成功が表示されます。

要約:

命名規則に従い、不要なコンテナを適時に削除します。

追加知識: docker の起動時に複数の異なるプロセスを実行し、ssh をインストールし、docker の起動時に jenkins と同時に実行を開始します。

最近、Jenkins スレーブ ノードで作業していたとき、マスターとの接続を確立するために ssh をインストールする必要がありました。このとき、スレーブに ssh サービスをインストールする必要がありましたが、ノードを再起動した後、手動で ssh を開始する必要がありました。

トラブルを避けるために、起動するときにsshとjenkinsサービスを実行してください。

1. docker が実行中の場合、ssh を起動するには root 権限が必要です。そうでないと、sshd で多くのことを実行する権限がありません。

したがって、dockerを実行するときは、パラメータ--user rootを追加します。

docker run -d --user root --name jenkins_nodes3 --add-host gitlab.com:100.20.20.100 -v /home/_data_slave:/var/jenkins_home -p 8188:8080 -p 51005:50000 -p 8122:22 jenkins_ssh

2. /usr/local/bin/jenkins.shスタートアップファイルを変更し、次の行を追加します。

/usr/sbin/sshd -D > null 2>&1 &

独自のプログラムの場合は、ログを独自のログファイルにリダイレクトできます。

docker を実行するときに、異なるポートを占有する 2 つのプロセスを開始するという問題を解決する上記の記事が、私が皆さんと共有できるすべてです。この記事が皆さんの参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux の Docker コンテナで bash を終了する 2 つの方法
  • Dockerはプロセス操作を管理するためにSupervisorを使用する
  • dockerでsshd操作を有効にする

<<:  JavaScript で知らない Object.entries の使い方

>>:  MySQL で数千万のテストデータを含むテストデータベースを作成する方法

推薦する

LinuxにNginxをインストールする詳細な手順

1. Nginxのインストール手順1.1 公式サイトの紹介http://nginx.org/en/d...

Ubuntu ブート自動起動サービス設定

Ubuntu でサービスを作成し、自動的に起動する方法: 1. [/lib/systemd/syst...

ウェブサイトのビジュアルデザインの重要なポイント

手工芸デザインからグラフィックデザイン、そしてウェブデザインまで、デザインの原則は同じままですが、私...

MySQL はリレーショナルデータベースですか?

MySQL はリレーショナル データベース管理システムです。リレーショナル データベースは、すべて...

HTML a タグの href 属性を使用して相対パスと絶対パスを指定する方法

実際のWeb開発では、画像の挿入やCSSファイルなどすべてパスが必要となります。ファイルパスを誤って...

JavaScript の基礎: エラーキャプチャメカニズム

目次序文エラーオブジェクト投げる試して…捕まえて…最後に最終ルールトライ/キャッチパフォーマンスウィ...

DockerプライベートイメージライブラリとAlibaba CloudオブジェクトストレージOSSの簡単な分析

Docker プライベートイメージライブラリDockerプライベートイメージライブラリとAlibab...

SQLで同じフィールドの異なる値のデータ統計を実行する

適用シナリオ: シールのさまざまな状態に応じて、さまざまな状態のシールの数をカウントする必要がありま...

JavaScriptアニメーション関数のカプセル化の詳細な説明

目次1. アニメーション機能の原理2. アニメーション関数のシンプルなカプセル化3. アニメーション...

mysql 5.7.20 win64 のインストールと設定方法

mysql-5.7.20-winx64.zipインストール手順のないインストール パッケージ: ht...

DBeaver を MySQL バージョン 8 以降に接続し、起こりうる問題を解決する方法の詳細な説明

データベース MySQL バージョン 8.0.18 DBeaver.exeをダウンロードするダウンロ...

MySQL における int の最大値の詳細な説明

導入2日前に見た問題について詳細に書きます。バイトコンピューターがバイナリに基づいていることは誰もが...

Javascriptはセキュリティ検証に整合性属性を使用します

目次1. スクリプトタグを使用してファイルをインポートする1. ローカルファイルをインポートする2....

AIX マウント NFS の書き込み効率が低い場合の解決策

NFSが提供するサービスマウント: サーバー上で /usr/sbin/rpc.mountd サーボ ...

mysql8でルートユーザーのパスワードをリセットする手順を完了します

序文最近、多くの新しい同僚がこの質問をしてきました。特に、homebrew を通じて自動的にインスト...