LoginSignup
0
0

More than 1 year has passed since last update.

【五日目】最小限の構成でdocker-composeからKubernetesにデプロイする勉強会

Last updated at Posted at 2020-07-19

概要

表題の勉強会を行った五日目の内容を記載します。全日の内容は以下のまとめページをご覧ください。

【まとめ】最小限の構成でdocker-composeからKubernetesにデプロイする勉強会

五日目のできたこと

  • Kubernetes
    • GitLabでDeployTokenの作成
    • secretの作成

五日目の内容

四日目では公開されたイメージを元にKubernetesで動作させることができました。ただしコンテナイメージを非公開にするとプルに失敗します。これを解決するためsecretを作成します。

$ kubectl get po
NAME                           READY   STATUS         RESTARTS   AGE
express-app-7dc6d9dbcd-hqt7f   0/1     ErrImagePull   0          7s
express-app-7dc6d9dbcd-trxsf   0/1     ErrImagePull   0          7s

GitLabでDeployTokenの作成

GitLabのプロジェクトのページ(ソースが格納されている?)から
Setting > Repository > Deploy Tokensと辿っていきます。

image.png

以下のような設定でトークンを作成します。

image.png

表示されたユーザー名パスワードをメモしておきます。

image.png

secretの作成

以下のコマンドでsecretを作成します。

kubectl create secret docker-registry gitlab-secret --docker-server=registry.gitlab.com --docker-username=[ユーザー名] --docker-password=[パスワード]

作成したsecretimagePullSecretsとして設定しておきます。

■ deployment.yml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: express-app
  labels:
    app: express-app
spec:
  replicas: 2
  selector:
    matchLabels:
      app: express-app
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: express-app
    spec:
      containers:
      - image: registry.gitlab.com/tamoco-mocomoco/k8s-test/express
        name: express-app
        ports:
        - containerPort: 3000
          name: express-app
      imagePullSecrets:
        - name: gitlab-secret

imagePullSecretsを設定したモノをapplyしてpodを確認します。これで非公開なイメージでもデプロイすることができます。

$ kubectl apply -f deployment.yaml
deployment.apps/express-app configured

$ kubectl get po
NAME                           READY   STATUS    RESTARTS   AGE
express-app-7dc6d9dbcd-dsbw7   1/1     Running   0          37s
express-app-7dc6d9dbcd-wxmfl   1/1     Running   0          7s

五日目を振り返って

Kubernetesのサンプルアプリを調べると公開されたイメージから動作させるモノがほとんどなので、今回は非公開のイメージから動作させることにしました。一日一時間程度なのでkindなどの説明ができておらず、もう少し理解を深めつつ情報を展開していきたいところです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0