#contents

* なぜ必要なのか [#v97e069f]
オンプレミスで用意したGitLabCI/CD用にdocker上のコンテナとしてGitRunnerを動かしているが、そこで利用するイメージにカスタマイズ用のDockerファイルで微調整したDockerファイルを利用したい.

** ローカルのDockerイメージを用意する [#m8ad43f6]

*** Dockerfileの用意 [#heb418db]

- sshキーを用意しておきます。
- Dockerfileを用意したフォルダに.sshフォルダをコピーしておきます。


 FROM jhipster/jhipster:v7.9.3
 
 USER root
 COPY .ssh/ /root/.ssh

 
** Dockerレジストリをローカルに立てる [#o639b61a]
 docker run -d -p 5000:5000 --restart=always --name registry registry:2

*** config.toml [#c1fccdca]
もしかしたら、
/etc/gitlab-runner/config.tomlファイル
に以下の追加をする必要がある。
 [[runners]]
   # ... 既存の設定 ...
   [runners.docker]
     # ... 既存の設定 ...
     insecure-registries = ["localhost:5000"]


*** Dockerイメージをビルドし、ローカルのDocker Registryに登録する [#a6c6498b]
 docker build -t local-jhipster:7.9.3 .
 docker tag local-jhipster:7.9.3 localhost:5000/local-jhipster:7.9.3
 docker push localhost:5000/local-jhipster:7.9.3

*** ローカルのDocker Registryに正しく登録されたことを確認 [#x2825bbe]
 curl localhost:5000/v2/local-jhipster/tags/list

*** GitLab CI/CDパイプラインで、 docker-compose.yml ファイルで修正済みのjhipsterイメージを使用するように変更 [#b5622563]
 services:
   jhipster:
     image: localhost:5000/local-jhipster:7.9.3
     environment:
       - JAVA_OPTS=-Xmx512m -Dspring.profiles.active=prod,swagger
     ports:
       - "8080:8080"
     volumes:
       - ./target/classes:/app/config/classes/
       - ./src/main/docker:/app/config/docker/
       - /tmp:/tmp
       - ~/.m2:/m2
トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS