マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

  • 「コンテナのチェーン」も、比較的、
    容易に構築できるようになってきた。

辺りにリーチするようになってきた。

詳細

SIが、CI/CDCI/CD パイプラインにリーチしない理由

そもそも、

サービスのプラクティス

  • 究極的にはスクリプト言語向け。
  • SIだと頻繁に更新されることがない。
  • テストやリリースのシナリオが再利用率が低い。

で、CI/CDから得られる効果が薄い。

どちらかと言うと

分離環境の構築比重が高い。

  • SIでは、
    • UT / CT / TT / STなど環境が多段になっている。
    • このため、これらの環境構築が優先される。
    • 逆に、多段化されているので、CI/CDがハマらない。
      (≒ CI/CD パイプラインが長すぎて構築できない。)
  • サービス保守体制は、恐らく、SIのように多段になっていない。

昨今、Docker → Docker Compose → K8sの敷居が下がってきた。

...と、チェーン&リフトして行く開発方式のサポートにより、

  • SIでもCI/CD的な事の有効が高まってきたと言える。
  • ただ、コチラをやってみて、まだ、一部、
    バカジャネーノ?と思う所はある(難し過ぎの意)
  • 以下の ①~⑤ ようなチェーンがサクッと繋がる
    ようになってくると実践的になって行くと思う。

① 全ローカル環境、

≒ 従来型の開発。

② ①のプログラムだけ、Docker化、

  • のプログラムだけDocker化。
  • ローカルのサービス群に対しては、10.0.75.1でブリッジ。

③ ②のサービス類だけ、Docker Compose化、

  • のサービス類だけ、Docker ComposeでDocker化。
  • 開発の対象というより、ローカル開発環境をDocker対応させるイメージ。
  • Docker Composeで、ローカルと同一のポート番号でブリッジさせれば、
    (portsの指定は、ホスト:コンテナなので、xxxx:xxxxにする)
    このUXは、の開発のUXと、あまり大きく変わらない。

④ ③にプログラムも加える。

  • で作成した、システム一式を全てDockerにリフトする。
  • プログラムをコンテナ化する。
  • コンテナ化したプログラムの接続文字列類を、
    ローカル・ブリッジ経由から、コンテナ直に変更する。

⑤ ④をKomposeなどでK8sに食わす。

XKE/XKSは高価なので、IaaSのLinuxVM(コンテナ・サーバ)があると便利かも。

XKE/XKSは、CaaS、PaaSに相当。

ユースケース

  • Windowsの開発環境から、
    コンテナ・イメージをコンテナ・レジストリをプッシュして、
  • IaaSベースのLinuxコンテナ・サーバで
    コンテナ・レジストリからコンテナ・イメージをプルして、

コンテナ・イメージを起動するみたいなイメージ。

役割分担

これは、Docker Desktop for Windowsでもできるんですが、
Nested VirtualizationをサポートするハイスペックなVMが必要になるので、

  • 一般開発者は、
    • Windows開発環境で開発・テスト。
    • 必要なら、WSL(1)を使用して開発・テスト。
  • 各種テスト環境(IaaSベースのLinuxコンテナ・サーバ)で、
    • コンテナ・レジストリからコンテナ・イメージをプルして、
    • コンテナ・イメージを起動する。

Linuxコンテナの開発をWindowsでやる理由

主な理由

結局、この辺なのかなと。

  • OA環境からエディタまで、クライアントOSに、
    Windowsが必要なケースは、まだ多そう。
  • ビルド以降を、全てLinux化することも可能と思うケド、
    まだ、ビルド~単体テスト迄は、Windowsでやるケースが多そう。

境界の設定

  • なので、

みたいな境界が何処かに
必要になるのではないか?と。

  • 以下の様なパターンが考えられる。

参考

  • MosP
    • Windowsで開発してるらしい(Java)。
    • サポートのある実行環境はCentOSとのこと。

参考

テスト自動化

CI/CD パイプライン

OSSコンソーシアム

開発基盤部会 Blog


Tags: :コンテナ, :テスト, :デバッグ, .NET開発, :ツール類, :CI


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-05-28 (木) 09:52:29 (5d)