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 で数千万のテストデータを含むテストデータベースを作成する方法

推薦する

フロントエンドコンポーネント化の基礎知識を詳しく解説

目次コンポーネントの基本概念オブジェクトとコンポーネントの違い成分属性属性とプロパティ属性:財産:ク...

Vue elementUI はツリー構造テーブルと遅延読み込みを実装します

目次1. 成果を達成する2. バックエンドの実装2.1 エンティティクラス2.2 データベース内のデ...

NextCloud プライベート クラウド ストレージ ネットワーク ディスクの構築に関する詳細なチュートリアル

Nextcloud は、オープンソースで無料のプライベート クラウド ストレージ ネットワーク ディ...

MySQL が「operate_time」エラーのデフォルト値が無効であると報告する問題を解決する

データベースでcreate tableステートメントを実行する テーブル `sys_acl` を作成...

エラー mysql テーブル 'performance_schema...解決方法

テスト環境は、JDBCドライバを使用してMariaDB 5.7でセットアップされています。 <...

MySQLの複合インデックス方式の詳細な説明

どの DBMS でも、インデックスは最適化にとって最も重要な要素です。データ量が少ない場合、適切なイ...

CSS で放射状グラデーションを使用してカード効果を実現する

数日前、同僚がポイントモールプロジェクトを受け取りました。このプロジェクトには、カードやクーポンをギ...

VMware12 に CentOS8 をインストールする方法 (VM 仮想マシンに CentOS8 をインストールするチュートリアル)

数日前に CentOS8 がリリースされました。8 の最初のバージョンですが、今日は VM12 に ...

Nginx をベースに特定の IP への短期アクセス数を制限する

特定の期間内に特定の IP へのアクセス回数を制限する方法は、特に悪意のある DDOS 攻撃に直面し...

MySQL テーブル内の重複データを検索して削除する方法の概要

時々、データベース テーブルに重複したデータが大量に保存されます。これらの重複データはリソースを浪費...

ウェブページのフッターで注意すべきことのまとめ

たくさんのリンクおそらく、このようなサイトをたくさん見たことがあるでしょう。ページの下部に 50 個...

10 HTML テーブル関連タグ

実際、多くの人が「テーブルは絶対に使用すべきではないと聞いたことがある」と言いますが、これは絶対に間...

VMware に Centos7 をインストールした後に外部ネットワークに ping できない問題を解決する

クラスターを構成する際に問題が発生しました。当初は 3 台の仮想マシンすべてが外部ネットワークに p...

MySQL データテーブルのパーティション戦略と利点と欠点の分析

目次なぜパーティションが必要なのでしょうか?パーティショニング戦略パーティションの危険性なぜパーティ...

DockerコンテナのIPアドレスを取得する方法の詳細な説明

1.コンテナに入った後 /etc/hosts を cat するコンテナ自体の IP アドレスと (-...