Docker-Maven-プラグインマイクロサービスをデプロイする方法は 2 つあります。
Mavenプラグインの自動デプロイメント手順冒頭に書いたように、この方法には抜け穴があり、ハッカーによってマイニングマシンイメージにリモートから簡単に挿入できます。使用時には注意してください。2375が開かれ、IP制限が課されていない場合は、マイニングに引き込まれます。 。 。 CA暗号化ポートの使用をお勧めします 1. ホストマシンのDocker設定を変更し、ポート2375を開いてリモートアクセスを許可します。Maven コマンドをローカルで実行することは、ホスト マシンに対するリモート操作です。Docker のリモート操作はデフォルトで閉じられています。まずポート 2375 を開きます。 まず、ホストマシン上でコマンドを実行し、構成ファイルを変更します(centos 7) vi /lib/systemd/system/docker.service
実行開始=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock \
なる 後 Centos7の場合は以下を変更します 実行開始=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375 2. 設定を更新してサービスを再起動するsystemctl daemon-reload //Dockerデーモンスレッドをロード systemctl restart docker //Dockerを再起動 3. コンテナファイアウォールを構成するポート2375が開かれていても、外部からはアクセスできず、内部からのみアクセスできます。ファイアウォールを設定する必要があります。 Alibaba Cloudが設定されていない場合は、マイニングに引き込まれる可能性があるので注意してください-_-、これは私の学校のサーバーなので、アクセスするにはVPNが必要ですが、問題ありません これは閉鎖されています。 systemctl stop firewalldコマンドを使用する(ファイアウォールをオフにする) systemctl enable firewalld (ファイアウォールを無効にすると、起動時に起動しなくなります) selinuxをオフにする vi /etc/selinux/config で、SELINUX=enforcing を disabled に変更します。 再起動が完了したら、ファイアウォールとSELinuxのステータスを確認します。 systemctl status firewalld (ファイアウォールの状態を確認する) secon (selinux ステータスの確認) Alibaba Cloudはセキュリティの呪いを設定することを推奨しています この時点で 4. pom.xmlに設定を追加する
<ビルド> <finalName>テストDocker</finalName> <プラグイン> <プラグイン> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </プラグイン> <!--docker maven プラグイン--> <プラグイン> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <バージョン>1.1.0</バージョン> <!--構成セクション--> <構成> <!--imageName ノードの内容をプライベート ウェアハウスのアドレスとポート、およびイメージ ID と TAG に変更し、プライベート サーバーに直接転送します --> <!-- 最終的に生成されるイメージ名を設定します。Docker イメージでは、プロジェクト名: バージョンを使用します --> <画像名>172.19.240.208:5000/${プロジェクト.アーティファクトId}:${プロジェクト.バージョン}}</画像名> <!-- ベースイメージ、Dockerfile の from--> に相当 <baseImage>ascdc/jdk8</baseImage> <!--エントリ ポイント、project.build.finalName は、プロジェクト タグ、testDocker の下のビルド タグの下のファイル名タグの内容です--> <!-- コンテナを起動するのと同等に、java-jar/testDocker.jar が自動的に実行されます --> <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint> <!--docker プライベート ウェアハウスにプッシュするかどうか--> <pushImage>真</pushImage> <レジストリ URL>172.19.240.208:5000</レジストリ URL> <リソース> <リソース> <ターゲットパス>/</ターゲットパス> <ディレクトリ>${project.build.directory}</ディレクトリ> <!--Docker にアップロードされるファイル。Dockerfile に testDocker.jar を追加するのと同等です /--> <include>${project.build.finalName}.jar</include> </リソース> </リソース> <dockerホスト>http://172.19.240.208:2375</dockerホスト> </構成> </プラグイン> </プラグイン> </ビルド> プライベートリポジトリにプッシュするには3つのポイントがあり、コンテナが開始状態にあることが前提であることに注意してください。 <!-- 1. registryUrl ノードを追加します。内容はプライベート ウェアハウスのアドレスとポートです (ここではポート 5000 を設定しました) --> <registryUrl>あなたのIP:5000</registryUrl> <!-- 2. pushImage ノードを追加する--> <pushImage>真</pushImage> <!-- 3. imageName ノードの内容をプライベート ウェアハウスのアドレスとポートに変更し、イメージ ID と TAG を追加します。ウェアハウス内の名前はプロジェクト名: version になります --> <imageName>yourip:5000/${project.artifactId}:${project.version} </imageName> まず、mvn clean と mvn install を実行し、ローカル リポジトリに配置します。 次に、 実行中にエラーが発生しました
Baidu で確認したところ、ログインが必要だという人がたくさんいました。実際、ログインする必要はなく、リポジトリも存在しません。実際、私の docker には jdk1.8 イメージ ファイルがなく、自分でダウンロードする必要があります。docker search jdk8 でプルするか、tar パッケージを自分でアップロードしてから Dockerfile で作成することができます。私は直接1つを引いた プロジェクト内のベースイメージ名を変更する ビルドとプッシュに成功しました ミラーを見る 倉庫を見る docker-maven-plugin の詳しい使い方については以上です。docker-maven-plugin の使い方についてさらに詳しく知りたい方は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: 幅の比率に応じて高さを変えるCSSを実装するいくつかの方法
>>: MySQL データベース シェル import_table データ インポート
目次1. MySQL の時刻型2. タイムゾーンを確認する3. 不正な時間値4. 厳密モード5. 事...
Grid は 2 次元のグリッド レイアウト システムです。これを使用すると、本質的にはハック メソ...
Node.js はクライアントリクエストデータ内の中国語文字化けの問題を解決しますコード例: var...
1. ボタンで使用される値は、「OK」、「削除」など、ボタンに表示されるテキストを指します。 2. ...
目次特徴保存戦略自己増加の決定自動増分値の変更実行プロセス問題点自動増分ロックロック戦略バッチ挿入の...
始める段階から初心者になるまで、Linux オペレーティング システムは不可欠です。最初のステップは...
この記事では、参考までにMySQL zipファイルをインストールする具体的な方法を紹介します。具体的...
CSS オーバーフローのメカニズムを詳細に学ぶ必要があるのはなぜですか?実際の開発プロセスでは、コン...
Linux システムのネットワーク接続を構成するのは難しい場合があります。幸いなことに、多くの新しい...
序文ミニプログラムを開発する過程では、録音機能を実装し、録音を再生し、録音をサーバーにアップロードす...
この記事では、フィルターを使用して日付をフォーマットするVueの具体的なコードを参考までに紹介します...
仮想マシンを使用する人は通常、操作と使用を容易にするために仮想マシン用の共有ディレクトリを設定します...
1. シェルスクリプトを作成する vim バックアップdb.sh 次のようにスクリプトを作成します。...
1. ドキュメントフローとフローティング1. ドキュメントフローとは何ですか? HTML では、ドキ...
この記事の例では、スライディングブロック効果を実現するための小さなプログラムの具体的なコードを参考ま...