GitLab: CI/CD

GitLab CI/CDの使い方

👋 Stackheroのドキュメントへようこそ!

Stackheroは、数多くの利点を提供する、すぐに使えるGitLabクラウドソリューションを提供しています。

  • 無制限のユーザー、リポジトリ、転送、CI/CD処理時間。
  • ワンクリックで簡単にアップデート
  • HTTPSで保護されたカスタマイズ可能なドメイン名(例: https://git.your-company.com)。
  • プライベートで専用のVMによる最適なパフォーマンスと強力なセキュリティ
  • 🇪🇺 ヨーロッパ🇺🇸 アメリカで利用可能。

時間を節約し、生活を簡素化: StackheroのGitLabクラウドホスティングソリューションを試すのに5分しかかかりません!

GitLab CI/CDは、バージョン管理とコラボレーションのための人気のあるオープンソースプラットフォームであるGitLabの強力で統合された機能です。このツールを使用すると、ソフトウェアの構築、テスト、デプロイの重要な段階を効率化し、自動化することができ、高品質なアプリケーションをより迅速かつ信頼性高く提供できます。

例えば、GitLab CI/CDを使用すると、新しいコミットがGitLabリポジトリにプッシュされるたびにトリガーされる自動ユニットテストを設定できます。これらのテストに成功すると、コードはステージング環境に構築され、デプロイされ、さらに評価されます。すべてのステージングテストをクリアすると、システムはコードを本番環境に昇格させ、エンドユーザーに利用可能にします。

GitLab CI/CDの際立った特徴の一つは、GitLab自体との緊密な統合です。これにより、プロジェクトリポジトリ内でCI/CDパイプラインを直接定義および管理でき、ワークフロー全体のオーケストレーションと追跡が簡素化されます。

GitLab CI/CDは、さまざまなプログラミング言語、フレームワーク、ツールをサポートしており、さまざまなタイプのプロジェクトに適応できるほど柔軟です。カスタマイズ可能なパイプラインシステムにより、構築、テスト、複数の環境へのデプロイなど、CI/CDプロセスの各段階をニーズに合わせて調整できます。

要するに、GitLab CI/CDは、ソフトウェアのデリバリープロセスを自動化し、強化するために設計された包括的なソリューションです。開発者はコードの記述と改善に集中できる一方で、プラットフォームは運用タスクを効率的に管理します。

プロジェクトリポジトリにDockerfileファイルが含まれている場合、Dockerイメージの構築、実行、必要に応じてレジストリへの公開プロセスを自動化できます。

まず、Stackheroダッシュボードで"Docker in Docker" (DinD)サポートを有効にします。

注意 DinDサポートを有効にすると、特にユーザーを隔離し、他のプロジェクトへのアクセスを防ぎたい場合にセキュリティリスクが生じます。

次に、gitlab-ci.ymlファイルを更新して、DinDを使用してDockerfileを構築するパイプライン構成を含めます。以下は構成例です。

image: docker:20.10.21

variables:
  DOCKER_TLS_CERTDIR: "/certs"

services:
  - docker:20.10.21-dind

before_script:
  - docker info

build:
  stage: build
  script:
    # "my-docker-image"を希望するイメージ名に置き換えてください:
    - docker build -t my-docker-image .
    # オプションで、Dockerイメージをテストします:
    # - docker run my-docker-image /script/to/run/tests

GitLab CIでDockerイメージを構築するための追加のガイダンスについては、公式GitLabドキュメントを参照してください。