弊学科で運営している GitLab をVMからcontainerに移行したので色々書いていきます。
移行の背景
弊学科ではVMベースで様々なサービスを提供していましたが、よりメンテナンスブルなコンテナを使用したサービス提供に移行している最中です。 その一環としてVMに構築していたGitLabをコンテナに移行しました。
元々の環境
新環境
- docker image を使用
- コンテナ立ち上げてGitLabのサービスが使えるようになるまで5分くらいかかる(多分
移行手順
旧GitLabからデータを吸い出す
- ワンコマンドでデータを吸い出せます。
gitlab-rake gitlab:backup:create
ただ下記のメッセージで説明があるように一部吸い出してくれないデータがあるのでそいつは手動で持っていきましょう。
2022-10-01 12:01:43 +0900 -- Warning: Your gitlab.rb and gitlab-secrets.json files contain sensitive data and are not included in this backup. You will need these files to restore a backup. Please back them up manually.
リストアする
新GitLabに移り以下のコマンドでリストアします。
gitlab-rake gitlab:backup:restore BACKUP=hogehoge
あと gitlab.rb と gitlab-secrets.json も持っていく感じで。
諸々の設定
弊学科だとFortigateを使用しているのでコソコソ設定してました。 あとDNSがキャッシュを永遠にみてたので再起動したり...
gitlab-runnerも使用していたのでそこの初期化も必要な感じでした。
感想
VMだと動いているOSのメンテもしないといけないのですが、コンテナに移したおかげでサービスのメンテに集中できていい感じになりそう。