すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:ACK クラスターへの Jenkins のデプロイおよびアプリケーションのビルド・デプロイメントの実行

最終更新日:Mar 11, 2026

Jenkins は継続的インテグレーションおよび継続的デプロイメント(CI/CD)プロセスを実装します。ACK クラスターに Jenkins をデプロイすることで、サービスの高可用性(HA)を確保し、運用・保守(O&M)コストを削減できます。本トピックでは、ACK クラスターへの Jenkins のデプロイ方法について説明し、シンプルなアプリケーション例を用いて、そのビルドおよびデプロイメント手順を実証します。

前提条件

注意事項

Jenkins システムの維持管理は開発者側の責任となります。本セクションでは、エンタープライズレベルのテクニカルサポートは提供されません。

重要

Jenkins で使用される Helm Chart およびコンテナイメージは海外ソースから取得されるため、イメージのプルに失敗する場合があります。以下のソリューションをご参照ください:

ステップ 1:Jenkins のデプロイ

  1. Jenkins の Helm リポジトリを構成します。

    helm repo add jenkins https://charts.jenkins.io
    helm repo update

    期待される出力:

    Hang tight while we grab the latest from your chart repositories...
    ...Successfully got an update from the "jenkins" chart repository
    Update Complete. ⎈Happy Helming!⎈
  2. Jenkins をインストールします。

    1. cicd 名前空間を作成します。

      kubectl create ns cicd
    2. Jenkins を cicd 名前空間にデプロイします。

      helm -n cicd install jenkins jenkins/jenkins \
        --set persistence.storageClass="alicloud-disk-essd" \
        --set persistence.size="20Gi" \
        --set controller.serviceType="LoadBalancer"   \
        --set controller.admin.password="****" 
      • persistence.storageClass:必須。Jenkins の永続ストレージ領域 jenkins_home ディレクトリ内のファイルを保存するためのクラウドディスク永続ボリュームを作成します。"alicloud-disk-available" を指定すると、システムが利用可能なクラウドディスクタイプを自動的に選択します。

      • persistence.size:必須。クラウドディスクのサイズです。Alibaba Cloud ECS のクラウドディスクの最小仕様は 20 GiB です。

      • controller.serviceType:任意。Service のタイプです。デフォルト値は ClusterIP です。

      • controller.admin.password:任意。管理者パスワードを指定します。デフォルトではランダムなパスワードが生成されます。

      その他のデプロイパラメーターについては、「helm-charts」をご参照ください。

    3. Jenkins Pod が正常に実行状態になるまで確認・待機します。

      kubectl -n cicd get po

      期待される出力:

      NAME        READY   STATUS    RESTARTS   AGE
      jenkins-0   2/2     Running   0          3m3s
  3. Service の外部 IP アドレスを表示します。

    LoadBalancer Service をデプロイした場合は、ブラウザから Jenkins サービスにアクセスします。
    kubectl get -n cicd service

    期待される出力:

    NAME            TYPE           CLUSTER-IP        EXTERNAL-IP     PORT(S)          AGE
    jenkins         LoadBalancer   192.168.***.***   8.222.***.***   8080:30949/TCP   2d17h
    jenkins-agent   ClusterIP      192.168.***.*     <none>          50000/TCP        2d17h

(任意)パイプラインタスクの作成

たとえば、first-pipeline という名前のパイプラインタスクを作成します。パイプラインをビルドする際、Jenkins はデフォルトで現在の ACK クラスターから動的に Slave Pod を起動し、ビルドタスクを実行します。ビルドタスク完了後、Slave Pod は直ちに解放されます。その他の Jenkins 構成情報については、「Jenkins」をご参照ください。

  1. Jenkins にログインします。左側のナビゲーションウィンドウで、[新規アイテム] をクリックします。

  2. [アイテム名の入力] エリアに first-pipeline と入力し、[パイプライン] タイプを選択して、[OK] をクリックします。

  3. ページ上部の [パイプライン] タブをクリックし、[Hello World] テンプレートを選択して、[保存] をクリックします。

    pipeline

  4. 左側のナビゲーションウィンドウで、[今すぐビルド] をクリックしてビルドを実行します。

  5. 左側のナビゲーションウィンドウで、[ビルド履歴] をクリックし、[1#] をクリックしてパイプラインドキュメントページに移動し、[コンソール出力] をクリックしてパイプラインのビルド結果を確認します。

よくある質問

デフォルトのランダム Jenkins パスワードを取得する方法

Jenkins のデプロイ時にログインパスワードを指定しなかった場合、以下のコマンドを実行してデフォルトのランダム Jenkins パスワードを取得できます。

kubectl -n cicd exec  -it svc/jenkins -c jenkins -- /bin/cat /run/secrets/additional/chart-admin-password && echo