Dockerコンテナのk8sデプロイメントの実装

Dockerコンテナのk8sデプロイメントの実装

環境: (docker、k8s クラスター)、前回 docker で起動した Java プログラムのイメージを例として続けます (https://www.jb51.net/article/189462.htm)

作成したイメージをDockerのプライベートリポジトリにプッシュする

docker タグ demo-img:latest localhost:5000/demo-img:1.0

docker push ローカルホスト:5000/demo-img:1.0 

k8sはイメージをデプロイし、名前空間とシークレットを作成します

名前空間 cl-test を作成します。独自の命名規則に従って名前を定義します。私はこれをテストに使用します。

kubectl 名前空間 cl-test を作成します。

nsを作成したら、このnsのシークレットを作成する必要があります。

kubectl シークレット docker-registry regcred を作成します --docker-server=レジストリ IP:5000 --docker-username=root --docker-password=xxxx@ [email protected] -n cl-test

コンソールは、作成が成功したことを示すために「secret/regcred created」を返します。

デモ サービス用の yaml ファイルを作成します。サービスとデプロイメントを 1 つの yaml ファイルにまとめます。

---

APIバージョン: v1
種類: サービス
メタデータ:
 名前: デモサービス
 名前空間: cl-test
 ラベル:
 アプリ: デモサービス
仕様:
 タイプ: NodePort
 ポート:
 - ポート: 8701
 ターゲットポート: 8701
 プロトコル: TCP
 名前: http
 セレクタ:
 アプリ: デモポッド
---
APIバージョン: アプリ/v1
種類: デプロイメント
メタデータ:
 名前: デモデプロイメント
 名前空間: cl-test
仕様:
 セレクタ:
 一致ラベル:
  アプリ: デモポッド
 レプリカ: 1
 テンプレート:
 メタデータ:
  ラベル:
  アプリ: デモポッド
 仕様:
  コンテナ:
  - 名前: デモコンテナ
  image: localhost:5000/demo-img:1.0 #イメージ名 + ローカルプライベートイメージライブラリのバージョン ports:
  - コンテナポート: 8701

起動する

kubectl 作成 -f デモ.yaml

ポッドを表示

kubectl get pod -n cl-test 

ポッドログを確認してください。これは、Javaが以前に起動されたときに表示されたログとまったく同じです。

これで、docker コンテナの k8s デプロイメントの実装に関するこの記事は終了です。より関連性の高い k8s デプロイメント docker コンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • docker を使用して Spring Boot をデプロイし、Skywalking に接続する方法
  • Dockerイメージをパッケージ化し、リモートサーバーにプッシュしてk8sにデプロイする方法
  • Dockerでk8sをデプロイする方法
  • Docker 学習ノート k8s デプロイ方法
  • Skywalking は Docker イメージをコンテナ化してデプロイし、テストから可用性まで k8s を構築します。

<<:  JavaScript 基礎シリーズ: 関数とメソッド

>>:  MySQL テーブルにおける非主キー列オーバーフロー監視の詳細な説明

推薦する

jQuery は、画像を切り替えるための左ボタンと右ボタンのクリックを実装します。

この記事では、左ボタンと右ボタンをクリックすることで画像を切り替えるjQueryの具体的なコードを例...

Windows 7 環境での Docker 高速ビルドと Alibaba Cloud コンテナ高速化構成の詳細な説明

前回の Docker に関する記事では、MAC システムでの構築について説明しました。この記事では、...

Alpine イメージに Ansible サービスを追加する方法

apk add ansible を使用して、alpine イメージに ansible サービスを追加...

MySQL マルチマスターと 1 スレーブのデータバックアップ方法のチュートリアル

概要いずれかのデータベースに対する操作は他のデータベースに自動的に適用され、2 つのデータベースのデ...

QT が MYSQL データベースに接続するための詳細な手順

最初のステップは、対応するデータベースモジュール(sql)をプロジェクトファイル( .pro )に追...

Docker-compose チュートリアルのインストールとクイックスタート

目次1. Compose の紹介2. ComposeとDockerの互換性3. Dockerをインス...

JavaScript オブジェクトからプリミティブ値への変換の詳細な説明

目次オブジェクトプロトタイプの値()オブジェクトプロトタイプtoString()シンボル.toPri...

MySQL をクリーンにアンインストールする方法 (テスト済みで効果的)

Mysql を完全にアンインストールするにはどうすればいいですか?以下の手順に従って実行してくださ...

mysql5.7.19 winx64 解凍版のインストールと設定のチュートリアル

mysql 5.7.19 winx64解凍版のインストールチュートリアルを収録しました。具体的な内容...

React のネストされたコンポーネントの構築順序

目次Reactの公式サイトではライフサイクルの説明を見ることができます次に、ネストされたコンポーネン...

Nginxホットデプロイメントの実装

目次セマフォNginx ホットデプロイメント上記のブログ投稿に従ってください。ファイアウォールをオフ...

CSS エラスティック ボックス flex-grow、flex-shrink、flex-basis の詳細な説明

3 つの属性 flex-grow、flex-shrink、flex-basis の機能は次のとおりで...

MySQL InnoDB のトランザクション特性を確保するにはどうすればよいですか?

序文「データベース トランザクションの特徴は何ですか?」と尋ねられたら、 ACID 特性である原子性...

現在のブラウザが JavaScript でヘッドレス ブラウザであるかどうかを検出する方法

目次ヘッドレスブラウザとは何ですか?なぜ「ヘッドレス」ブラウザと呼ばれるのでしょうか?ヘッドレスブラ...

Unix/Linux システムにおける nobody ユーザーと nologin の詳細な紹介

Unix/Linux システムの nobody ユーザーとは何ですか? 1. Windows システ...