なぜ必要なのか

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

ローカルのDockerイメージを用意する

Dockerfileの用意

FROM jhipster/jhipster:v7.9.3

USER root
COPY .ssh/ /root/.ssh

Dockerレジストリをローカルに立てる

docker run -d -p 5000:5000 --restart=always --name registry registry:2

config.toml

もしかしたら、 /etc/gitlab-runner/config.tomlファイル に以下の追加をする必要がある。

[[runners]]
  # ... 既存の設定 ...
  [runners.docker]
    # ... 既存の設定 ...
    insecure-registries = ["localhost:5000"]

Dockerイメージをビルドし、ローカルのDocker Registryに登録する

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に正しく登録されたことを確認

curl localhost:5000/v2/local-jhipster/tags/list

GitLab CI/CDパイプラインで、 docker-compose.yml ファイルで修正済みのjhipsterイメージを使用するように変更

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
Last-modified: 2023-04-18 (火) 15:15:02 (368d)