<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://about.gitlab.com/blog</id>
    <title>GitLab</title>
    <updated>2025-07-03T20:01:39.679Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <author>
        <name>The GitLab Team</name>
    </author>
    <link rel="alternate" href="https://about.gitlab.com/blog"/>
    <link rel="self" href="https://about.gitlab.com/atom.xml"/>
    <subtitle>Gitlab Blog RSS feed</subtitle>
    <icon>https://about.gitlab.com/favicon.ico</icon>
    <rights>All rights reserved 2025,</rights>
    <entry>
        <title type="html"><![CDATA[GitLab 18.1 リリース]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/gitlab-18-01-release/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/gitlab-18-01-release/"/>
        <updated>2025-06-20T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>本ブログは、<a href="https://about.gitlab.com/releases/2025/06/19/gitlab-18-1-released/">GitLab 18.1 Release</a>の抄訳です。内容に相違がある場合は、原文が優先されます。</p>
<h2>Maven仮想レジストリ（ベータ版）とGitLab Duoコードレビュー搭載のGitLab 18.1リリース</h2>
<p>このたび、GitLab 18.1のリリースを発表しました。このリリースでは、Maven仮想レジストリ（ベータ版）、GitLab Duoコードレビュー、漏洩パスワードの検出、SLSAレベル1準拠を実現するCI/CDコンポーネントなど、さまざまな機能が追加されました。</p>
<p>これらの機能は、今回のリリースに含まれる110件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。</p>
<p>GitLab 18.1には、GitLabコミュニティのユーザーから311件ものコントリビュートがありました。ありがとうございました！GitLabは<a href="https://about.gitlab.com/community/contribute/">誰もがコントリビュートできる</a>プラットフォームであり、今回のリリースもユーザーのみなさまの協力なしには実現しませんでした。</p>
<p>来月のリリースで予定されている内容を先取りするには、<a href="https://about.gitlab.com/upcoming-releases/">今後のリリースページ</a>をご覧ください。</p>
<p><a href="http://twitter.com/share?text=GitLab+18.1%E3%81%AE%E3%83%AA%E3%83%AA%E3%83%BC%E3%82%B9%E3%81%A7%E3%81%AF%E3%80%81Maven%E4%BB%AE%E6%83%B3%E3%83%AC%E3%82%B8%E3%82%B9%E3%83%88%E3%83%AA%EF%BC%88%E3%83%99%E3%83%BC%E3%82%BF%E7%89%88%EF%BC%89%E3%81%A8GitLab+Duo%E3%82%B3%E3%83%BC%E3%83%89%E3%83%AC%E3%83%93%E3%83%A5%E3%83%BC%E3%81%8C%E8%BF%BD%E5%8A%A0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF%E3%81%97%E3%81%A6SNS%E3%81%A7%E5%85%B1%E6%9C%89%E3%81%97%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%EF%BC%81&amp;url=https://about.gitlab.com/ja-jp/blog/gitlab-18-1-release/&amp;hashtags=">GitLab 18.1のリリースでは、Maven仮想レジストリ（ベータ版）とGitLab Duoコードレビューが追加されました。クリックしてSNSで共有しましょう！</a></p>
<h2>今月の<a href="https://contributors.gitlab.com/docs/notable-contributors">注目コントリビューター</a>は<a href="https://gitlab.com/karras"></a><a href="https://gitlab.com/chaitanyason9">Chaitanya Sonwane</a>さんです</h2>
<p>&lt;img src=&quot;https://about.gitlab.com/images/notable-contributor-logo.svg&quot;&gt;</p>
<p>Chaitanya Sonwaneさんは、継続的な認証機能の強化により、GitLabのセキュリティ機能向上に貢献しています。<a href="https://contributors.gitlab.com/users/chaitanyason9?fromDate=2025-01-01&amp;toDate=2025-12-31">2025年に13件のコントリビュートがマージされ</a>、認証情報インベントリのフィルタリング、サービスアカウント管理、作業アイテムの使いやすさが向上しました。以前には<a href="https://about.gitlab.com/releases/2025/04/17/gitlab-17-11-released/#token-statistics-for-service-account-management">GitLab 17.11の主要機能</a>としてサービスアカウントのトークン統計情報をひと目で確認できる機能を手がけ、サービスアカウントの管理を容易にする「一目でわかる」情報を提供しました。Chaitanyaさんは現在、<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/503587">作業アイテムリストのソート設定をコンテキスト固有にする改善</a>に取り組み、GitLabの製品計画におけるユーザーエクスペリエンスをさらに向上させています。</p>
<p>Chaitanyaさんの活躍により、GitLabを利用する組織のセキュリティが強化され、サービスアカウントの使用状況がプロジェクト全体で把握しやすくなりました。現在では、チームが認証情報をより効果的に追跡、ローテーションできるようになったことで、セキュリティの脆弱性につながりかねない、未管理の認証情報のリスクが軽減されています。</p>
<p>「認証情報インベントリとサービスアカウントに対するChaitanyaさんのコントリビュートは、セキュリティ分野において非常に貴重なものです」と<a href="https://gitlab.com/eduardosanz">Eduardo Sanz-Garcia（</a>ソフトウェアサプライチェーンセキュリティステージの認証グループのシニアフロントエンドエンジニア）は語ります。Eduardoは、<a href="https://about.gitlab.com/direction/software_supply_chain_security/authentication/">GitLabの認証チーム</a>による推薦も後押ししました。</p>
<p>さらに彼は「Chaitanyaさんは、トークン統計のコンセプトの実装に貢献してくれました。認証情報インベントリの取り組みにより、認証情報の追跡とモニタリングを強化する、非常に要望の多かった機能が提供されたのです。非常に素晴らしいコントリビュートでした」とも付け加えています。</p>
<p>ChaitanyaさんはTATA AIGのソフトウェアエンジニアです。セキュリティ上の課題に積極的に取り組み、自らのコントリビュートを改善するための継続的なフォローアップを行っています。</p>
<p>この場を借りて、GitLabのセキュリティ基盤やその他の製品にコントリビュートしてくれたChaitanyaさんに感謝します！</p>
<h2>GitLab 18.1リリースの主な改善点</h2>
<h3>Maven仮想レジストリがベータ版で利用可能に</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>Maven仮想レジストリは、GitLabでのMaven依存関係管理を簡素化するものです。Maven仮想レジストリを使用しない場合、Maven Central、プライベートリポジトリ、GitLabパッケージレジストリからの依存関係にアクセスするための設定を個別に行う必要があります。こうしたアプローチでは、リポジトリへの順次クエリによってビルドが遅くなり、セキュリティ監査とコンプライアンスレポート作成が複雑になります。</p>
<p>Maven仮想レジストリは、複数のアップストリームリポジトリを単一のエンドポイントに集約することで、このような問題に対処します。プラットフォームエンジニアは、1つのURLを介してMaven Central、プライベートレジストリ、GitLabパッケージレジストリを設定できます。インテリジェントキャッシュはビルドパフォーマンスを向上させ、GitLabの認証システムと統合されます。これにより、設定オーバーヘッドの削減、ビルドの高速化、セキュリティとコンプライアンス向上を目的として一元管理されたアクセス制御が実現します。</p>
<p>Maven仮想レジストリは現在、GitLab.comとGitLab Self-Managedの両方で、GitLab PremiumおよびUltimateのお客様にベータ版として提供されています。一般公開リリースには、レジストリ設定用のWebベースUI、共有可能なアップストリーム機能、キャッシュ管理のためのライフサイクルポリシー、強化された分析機能などが追加される予定です。現在のベータ版では、トップレベルグループあたり最大20の仮想レジストリ、仮想レジストリあたり最大20のアップストリームまでと制限されており、ベータ期間中の設定はAPIのみで行えます。</p>
<p>企業のお客様を対象としたMaven仮想レジストリベータプログラムを実施しています。最終リリースの品質向上にご協力をお願いいたします。ベータ版にご参加いただくお客様には、機能への早期アクセス、GitLab製品チームとの直接のやり取り、評価期間中の優先サポートを提供します。ベータプログラムに参加するには、<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/498139">イシュー498139</a>でご興味があることをお知らせいただき、ユースケースの詳細を提供してください。また、フィードバックや提案は<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/543045">イシュー543045</a>にお寄せください。</p>
<p><a href="https://docs.gitlab.com/user/packages/virtual_registry/maven/">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/14137">エピック</a><a href="https://gitlab.com/groups/gitlab-org/-/epics/14137"></a></p>
<p>&lt;!-- blank line --&gt;</p>
<p>&lt;figure class=&quot;video_container&quot;&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/ZkIkaJDEcEE?si=F7dfSCtzBIv02_is&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt; &lt;/iframe&gt;
&lt;/figure&gt;
&lt;!-- blank line --&gt;</p>
<h3>GitLab Duoコードレビューが一般公開開始</h3>
<blockquote>
<p>SaaS: Premium、Ultimate、Duo Enterprise<br>
Self-Managed: Premium、Ultimate、Duo Enterprise</p>
</blockquote>
<p>GitLab Duoコードレビューが一般公開され、本番環境で使用できるようになりました。AI搭載のこのコードレビューアシスタントは、マージリクエストに対して的確で自動化されたフィードバックを提供し、従来のコードレビュープロセスを変革します。これにより、人間のレビュアーが関与する前に、潜在的なバグ、セキュリティの脆弱性、コード品質の問題を特定できるため、レビュープロセス全体を徹底的かつ効率的に行うことができます。GitLab Duoコードレビューには以下の機能が含まれています。</p>
<ul>
<li><strong>自動初期レビュー</strong>：コードの変更内容を分析し、潜在的な問題、改善点、ベストプラクティスに関する包括的なフィードバックを提供します。</li>
<li><strong>対話ベースで改善</strong>：マージリクエストコメントで<code>@GitLabDuo</code>をメンションすると、特定の変更や質問に対する的確なフィードバックを受け取ることができます。</li>
<li><strong>実行可能な提案</strong>：多くの提案をブラウザから直接適用できるため、改善プロセスが効率化されます。</li>
<li><strong>文脈を理解した分析</strong>：変更されたファイルの内容を理解し、プロジェクトに特化した関連性の高い推奨事項を提供します。</li>
</ul>
<p>GitLab Duoコードレビューをリクエストするには、次の手順に従います。</p>
<ul>
<li>マージリクエストで、<code>/assign_reviewer</code> <code>@GitLabDuo</code>クイックアクションを使用して<code>@GitLabDuo</code>をレビュアーとして追加するか、GitLab Duoをレビュアーとして直接割り当てます。</li>
<li>コメントで<code>@GitLabDuo</code>をメンションすると、ディスカッションスレッドで特定の質問をしたり、詳細なフィードバックをリクエストしたりできます。</li>
<li>プロジェクト設定で自動レビューを有効にすると、GitLab Duoがすべての新しいマージリクエストを自動的にレビューします。</li>
</ul>
<p>GitLab Duoコードレビューを活用することで、チームがより高いコード品質基準を維持しながら、手動レビューサイクルに費やす時間を短縮できます。問題を早期に発見し、教育的なフィードバックを提供することで、開発チームにとって品質管理ツールと学習ツールの両方の役割を果たします。</p>
<p>ベータ版時のGitLab Duoコードレビューの動作はこちらを<a href="https://www.youtube.com/watch?v=FlHqfMMfbzQ">ご覧ください</a>。</p>
<p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/517386">イシュー517386</a>でご経験やフィードバックをお寄せいただき、本機能の継続的な改善にご協力ください。</p>
<p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/13979">エピック</a><a href="https://gitlab.com/groups/gitlab-org/-/epics/13979"></a></p>
<p><img src="https://about.gitlab.com/images/18_1/create-duo-code-review.png" alt="GitLab Duoコードレビューが一般公開開始"></p>
<h3>ネイティブGitLab認証情報の漏洩パスワード検出</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: -</p>
</blockquote>
<p>GitLab.comへのサインイン時に、アカウント認証情報の安全なチェックが実行されるようになりました。お使いのパスワードが既知の情報漏洩に含まれている場合、GitLabにバナーが表示され、メール通知が送信されます。これらの通知には、認証情報の更新手順が記載されています。</p>
<p>セキュリティを最大限に高めるために、GitLabでは以下を推奨しています。</p>
<ul>
<li>GitLab専用の強力なパスワードの使用</li>
<li>2要素認証の有効化</li>
<li>アカウントアクティビティの定期的な確認</li>
</ul>
<p>注：この機能はネイティブGitLabのユーザー名とパスワードでのみ利用可能です。SSO認証情報は対象外です。</p>
<p><a href="https://docs.gitlab.com/security/compromised_password_detection/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/549865">イシュー</a><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/549865"></a><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/549865"></a></p>
<p><img src="https://about.gitlab.com/images/18_1/sscs_password_alert.png" alt="ネイティブGitLab認証情報の漏洩パスワード検出"></p>
<h3>CI/CDコンポーネントでSLSAレベル1のコンプライアンスに対応</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLabの新しいCI/CDコンポーネントを使用することで、<a href="https://slsa.dev/">SLSA</a>レベル1のコンプライアンスに対応できるようになりました。このコンポーネントは、GitLab Runnerが生成するSLSA準拠の <a href="https://docs.gitlab.com/ci/runners/configure_runners/#artifact-provenance-metadata">アーティファクトの来歴メタデータ</a>に対して署名と検証を実行します。また、<a href="https://docs.gitlab.com/ee/ci/yaml/signing_examples.html">Sigstore Cosignの機能</a>を再利用可能なモジュールとして提供し、CI/CDワークフローに簡単に統合できるようにします。</p>
<p><a href="https://docs.gitlab.com/ci/pipelines/pipeline_security/#sign-and-verify-slsa-provenance-with-a-cicd-component">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/15859">エピック</a></p>
<p><a href="https://gitlab.com/groups/gitlab-org/-/epics/15859"></a></p>
<p><img src="https://about.gitlab.com/images/18_1/SLSA_component.png" alt="CI/CDコンポーネントでSLSAレベル1のコンプライアンスに対応"></p>
<h2>GitLab 18.1リリースに含まれるその他の改善点</h2>
<h3>コード検索で複数の検索結果の統合表示が可能に</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>完全一致コードの検索（ベータ版）では、同じファイル内の複数の検索結果を単一のビューに統合して表示できるようになりました。この改善により、次のことが可能になります。</p>
<ul>
<li>孤立した行表示ではなく、隣接する一致間のコンテキストを保持</li>
<li>一致する内容が近い場合に重複コンテンツを排除し、視覚的な混乱を軽減</li>
<li>ファイルごとの一致数を明確に表示することで、ナビゲーションを強化</li>
<li>エディタでの表示と同様にコードを表示することで、可読性を改善</li>
</ul>
<p>この変更により、リポジトリ全体のコードパターンの発見と理解がより効率的になりました。</p>
<p><a href="https://docs.gitlab.com/integration/exact_code_search/zoekt/">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/13127">エピック</a></p>
<p>&lt;!-- blank line --&gt;</p>
<p>&lt;figure class=&quot;video_container&quot;&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/wx2D39UdUoQ?si=fvjYK-rYVHPgVgzs&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt; &lt;/iframe&gt;
&lt;/figure&gt;
&lt;!-- blank line --&gt;</p>
<h3>権限チェック機能を強化したCODEOWNERSファイル検証</h3>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
<p>GitLabでは、基本的な構文チェックを超えた、CODEOWNERSファイルに対するより強化された検証が提供されるようになりました。CODEOWNERSファイルを表示すると、GitLabが自動的に包括的な検証を実行し、マージリクエストのワークフローに影響を与える前に構文エラーと権限の問題を特定します。</p>
<p>この強化された検証では、CODEOWNERSファイル内の最初の200のユニークなユーザーとグループの参照をチェックし、次のことを検証します。</p>
<ul>
<li>参照されたすべてのユーザーとグループがこのプロジェクトにアクセスできること</li>
<li>ユーザーに、マージリクエストを承認するために必要な権限があること</li>
<li>グループに、デベロッパーレベル以上のアクセス権があること</li>
<li>グループに、マージリクエストの承認権限を持つユーザーが少なくとも1人含まれていること</li>
</ul>
<p>この事前検証により、設定上の問題を早期に発見して承認ワークフローの中断を防ぎ、マージリクエストが作成されたときにGitLabコードオーナーが実際にレビューの責任を果たせるようにできます。</p>
<p><a href="https://docs.gitlab.com/ee/user/project/codeowners/troubleshooting.html#validate-your-codeowners-file">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/15598">エピック</a></p>
<h3>VS Codeでダウンストリームパイプラインのジョブログを表示</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>VS Code用GitLab Workflow拡張機能で、ダウンストリームパイプラインからのジョブログをエディタ内で直接表示できるようになりました。これまで、子パイプラインからログを確認するには、GitLab Webインターフェイスに切り替える必要がありました。</p>
<p>この機能は、<a href="https://about.gitlab.com/community/co-create/">GitLab共同開発</a>を通じて開発されました。この場を借りて、コントリビュートしてくれたTim Ryanさんに感謝します！</p>
<p><a href="https://docs.gitlab.com/editor_extensions/visual_studio_code/cicd/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/issues/1895">イシュー</a></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750659268/orzwm4kjqdag8fe0psvr.png" alt="VS Codeでダウンストリームパイプラインのジョブログを表示"></p>
<h3>シークレット検出のデフォルトルールとDAST検出の同等性</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>DASTアナライザーが、GitLabのシークレット検出アナライザーで使用されるものと同じデフォルトのシークレット検出ルールを自動的に取り込むようになりました。この改善により、両方のアナライザーで検出されるシークレットの種類に一貫性が確保されます。</p>
<p><a href="https://docs.gitlab.com/user/application_security/dast/browser/checks/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/549990">イシュー</a></p>
<h3>依存関係リストでコンポーネントバージョンによるフィルタリング</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>依存関係リストで、コンポーネントのバージョン番号によるフィルタリングがサポートされるようになりました。複数のバージョン（<code>バージョン=1.1、1.2、1.4</code>など）を選択できますが、バージョン範囲指定はサポートされていません。この機能は、グループとプロジェクトの両方で利用できます。</p>
<p><a href="https://docs.gitlab.com/user/application_security/dependency_list/#filter-dependency-list">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/16431">エピック</a></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750659404/fepyzz2uv3j47bjcehhi.png" alt="依存関係リストでコンポーネントバージョンによるフィルタリング"></p>
<h3>コンプライアンスステータスレポートでコントロールステータスの一覧がポップアップで表示されるように</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>コンプライアンスステータスレポートのコントロールには、次の3つのステータスがあります。</p>
<ul>
<li>合格</li>
<li>失敗</li>
<li>保留中</li>
</ul>
<p>これまでは、要求事項に関連付けられているコントロールの数に関係なく、少なくとも1つのコントロールが「保留中」の場合、要求事項行全体が「保留中」として表示されていました。これは、失敗したコントロールの表示方法とは一貫性がありませんでした。失敗したコントロールが1つでもある場合は、要求事項に関連付けられた全コントロール数と失敗の数が表示されます。</p>
<p>「保留中」のコントロールに関する詳細なコンテキストと情報を提供するため、要求事項行のステータスにカーソルを合わせると、各コントロールのステータスを一覧表示するポップアップが表示されるようになりました。これにより、単に「保留中」という全体ステータスを確認するだけでなく、どのコントロールが保留中で、どのコントロールが合格または失敗しているかを具体的に把握できるようになりました。</p>
<p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_status_report/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/521757">イシュー</a></p>
<h3>ボットユーザーと人間のユーザーのフィルタリング</h3>
<blockquote>
<p>SaaS: -<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>運用が進んだGitLabインスタンスでは、多くの場合、人間とボットの両方のユーザーが多数存在します。今回のリリースで、管理者エリアのユーザーリストをユーザータイプでフィルタリングできる機能が追加されました。この機能により、以下のことが可能になります。</p>
<ul>
<li>人間のユーザーと自動化アカウントを区別して迅速に特定、管理</li>
<li>特定のユーザータイプに絞った管理アクションを実行</li>
<li>ユーザーの監査と管理のワークフローの効率化</li>
</ul>
<p><a href="https://docs.gitlab.com/administration/moderate_users/#view-users-by-type">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/541186">イシュー</a></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750659653/prkshqzxg5785p69yshd.png" alt="ボットユーザーと人間のユーザーのフィルタリング"></p>
<p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/541186"></a></p>
<h3>ユーザープロフィールのORCID識別子</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>ユーザープロフィールにORCID識別子を設定できるようになり、GitLabが研究者や学術コミュニティにとってより使いやすく価値あるものになりました。<a href="https://orcid.org/">ORCID</a>（Open Researcher and Contributor ID）は、研究者に永続的なデジタル識別子を提供し、他の研究者との区別を可能にするとともに、研究者とその業績を自動的に関連付けることで、適切な評価を支援するものです。</p>
<p>この機能は、学術コミュニティからの長年の要望に応えるため、アルトワ大学の修士課程の学生であるThomas LabaletteとErwan Hivinが<a href="https://www.ouvrirlascience.fr/appointment-of-daniel-le-berre-as-the-national-coordinator-for-higher-education-and-research-software-forges-in-france/">Daniel Le Berre</a>の指導の下、コミュニティに貢献することを目的に開発したものです。</p>
<p><a href="https://docs.gitlab.com/user/profile/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/23543">イシュー</a></p>
<p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/23543"></a></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750663008/oogvxelirqapyxp10pha.png" alt="ユーザープロフィールのORCID識別子"></p>
<h3>サービスアカウントのパイプライン通知への登録</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>サービスアカウントによってトリガーされたパイプラインイベントの通知を、受信できるようになりました。通知はパイプラインが合格、失敗、または修正された場合に送信されます。これまでは、サービスアカウントに有効なカスタムメールアドレスが設定されている場合にのみ、そのサービスアカウントのメールアドレスに通知が送信されていました。</p>
<p>この場を借りて、コントリビュートしてくれた<a href="https://gitlab.com/Densett">Densett</a>さん、<a href="https://gitlab.com/tonton1728">Gilles Dehaudt</a>さん、<a href="https://gitlab.com/lenaing">Lenain</a>さん、<a href="https://gitlab.com/gmcquat">Geoffrey McQuat</a>さん、<a href="https://gitlab.com/rbihore">Raphaël Bihoré</a>さんに感謝します！</p>
<p><a href="https://docs.gitlab.com/user/profile/notifications/#notification-events-on-issues-merge-requests-and-epics">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/515629">イシュー</a></p>
<h3>無効となっているパーソナルアクセストークンの表示</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLabは、有効期限が切れたり、失効したりしたアクセストークンを自動的に無効化します。今回の変更では、無効となっているトークンを確認できるようになりました。これまでは、アクセストークンが無効になると表示されなくなっていました。この変更により、こうしたトークンのトレーサビリティとセキュリティが向上します。</p>
<p><a href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/425053">イシュー</a></p>
<p>&lt;!-- blank line --&gt;</p>
<p>&lt;figure class=&quot;video_container&quot;&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/weEU6pukbag?si=ebijnyBQdW1_5yBl&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt; &lt;/iframe&gt;
&lt;/figure&gt;
&lt;!-- blank line --&gt;</p>
<h3>GitLab Query Language（GLQL）ビューでのエピックサポート（ベータ版）</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLab Query Language（GLQL）ビューが大幅に改善されました。今後は、クエリでエピックをタイプとして使用できるようになり、グループ全体のエピック検索や親エピックへのクエリが可能になります。</p>
<p>この機能強化により計画・追跡のワークフローが大きく向上し、エピックレベルでのクエリや整理が格段に効率化されます。</p>
<p><a href="https://docs.gitlab.com/user/glql/fields/#epic">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab-query-language/glql-rust/-/issues/30">イシュー</a></p>
<h3>レビューパネルによるマージリクエストのレビューエクスペリエンスの強化</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>マージリクエストのレビューを行う際、レビューを送信する前にこれまでのフィードバックを参照すると役立つことがあります。これまでは、最終コメントと保留中コメントが別々のポップアップに分かれていたため、全体像を把握することが困難でした。</p>
<p>コードレビュー時に、保留中の下書きコメントを一箇所にまとめて表示する専用ドロワーが利用できるようになりました。強化されたレビューパネルでは、レビュー送信インターフェイスがよりアクセスしやすい場所に移動し、保留中のコメント数を示す番号付きバッジが表示されます。パネルを開くと、下にスクロールできるリストに下書きコメントがすべて表示されるため、送信前のフィードバックの確認と管理が簡単になります。</p>
<p><a href="https://docs.gitlab.com/user/project/merge_requests/reviews/#submit-a-review">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/525841">イシュー</a></p>
<p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/525841"></a></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750663218/yfbrzecnuynpb1g57854.png" alt="レビューパネルによるマージリクエストのレビューエクスペリエンスの強化"></p>
<h3>GitLab Runner 18.1</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLab Runner 18.1もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。</p>
<p>バグ修正：</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/543351">GitLab 17.10または17.11にアップグレードすると、Runnerがジョブをリクエストしたときに404エラーが発生する可能性があります</a>。</li>
</ul>
<p>すべての変更の一覧は、GitLab Runnerの<a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-1-stable/CHANGELOG.md">変更履歴</a>で確認できます。</p>
<p><a href="https://docs.gitlab.com/runner">ドキュメント</a></p>
<h3>高度なSASTのPHPサポート</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>GitLabの高度なSASTにPHPサポートを追加しました。この新しいファイル間、関数間スキャン機能を使用するには、<a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#enable-advanced-sast-scanning">高度なSASTを有効</a>にします。高度なSASTをすでに有効にしている場合、PHPサポートは自動的に有効になります。</p>
<p>高度なSASTが各言語で検出する脆弱性の種類を確認するには、<a href="https://docs.gitlab.com/user/application_security/sast/advanced_sast_coverage/">高度なSASTカバレッジページ</a>を参照してください。</p>
<p><a href="https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#supported-languages">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/14273">エピック</a></p>
<h3>パイプライン実行ポリシーにおける変数の優先順位制御</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>多くの場合、セキュリティチームはセキュリティ保証とデベロッパーエクスペリエンスの間で微妙なバランスを取ることになります。セキュリティスキャンが適切に実行されていることを確認するのは重要ですが、セキュリティアナライザーが正常に動作するためには、開発チームからの特定のインプットが必要な場合があります。変数の優先順位制御により、セキュリティチームは新しい<code>variables_override</code>設定オプションを通じて、パイプライン実行ポリシーにおける変数の処理方法を細かく制御できるようになりました。</p>
<p>この新しい設定を使用すると、次のことが可能になります。</p>
<ul>
<li>プロジェクト固有のコンテナイメージパス（<code>CS_IMAGE</code>）を許可するコンテナスキャンポリシーを適用</li>
<li><code>SAST_EXCLUDED_PATHS</code>などの低リスク変数は許可し、<code>SAST_DISABLED</code>などの高リスク変数はブロック</li>
<li><code>AWS_CREDENTIALS</code>などのグローバルCI/CD変数で保護（マスクまたは非表示）されたグローバル共有認証情報を定義しつつ、必要に応じてプロジェクトレベルのCI/CD変数によるプロジェクト固有の上書きを許可</li>
</ul>
<p>この強力な機能は、次の2つのアプローチをサポートしています。</p>
<ul>
<li><strong>デフォルトで変数をロックする</strong>（<code>allow: false</code>）：例外として指定した特定の変数を除き、すべての変数をロック</li>
<li><strong>デフォルトで変数を許可する</strong><code>（allow: true</code>）：変数のカスタマイズを許可するが、重大なリスクのある変数を例外として指定することで制限</li>
</ul>
<p>パイプライン実行ポリシーによってCI/CDジョブが実行される際のトレーサビリティとトラブルシューティングを改善するために、ジョブログ機能も導入されました。これにより、デベロッパーとセキュリティチームは、どのジョブがポリシーによって実行されたかを簡単に特定できますジョブログでは、変数の上書きによる影響の詳細を確認でき、どの変数がポリシーによって上書きまたはロックされているかを把握するのに役立ちます。</p>
<p><strong>実際の影響</strong></p>
<p>この機能強化により、セキュリティ要件とデベロッパーの柔軟性のニーズとの間のギャップが解消されます。</p>
<ul>
<li>セキュリティチーム：プロジェクト固有のカスタマイズを許可しつつ、標準化されたスキャンを実行できる</li>
<li>デベロッパーは：ポリシーの例外をリクエストすることなく、プロジェクト固有の変数を制御できる</li>
<li>組織は：開発ワークフローを混乱させることなく、一貫したセキュリティポリシーを実装できる</li>
</ul>
<p>この重要な変数制御機能により、GitLabは組織が開発の柔軟性を保ちながら強固なセキュリティポリシーを導入できる環境を提供します。</p>
<p><a href="https://docs.gitlab.com/user/application_security/policies/pipeline_execution_policies/#variables_override-type">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/16430">エピック</a></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750663308/h1oukhyd4ky1w6spdxpo.png" alt="パイプライン実行ポリシーにおける変数の優先順位制御"></p>
<h3>外部カスタムコントロールの<code>Name</code>を定義</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>これまでは、カスタムコンプライアンスフレームワークを作成する際に外部カスタムコントロールの名前を定義できず、GitLabコントロールと並んでリスト表示される外部コントロールを識別することが困難でした。</p>
<p>今回、外部カスタムコントロールを定義する際のワークフローの一部として<code>Name</code>フィールドが追加されました。これにより、複数の外部カスタムコントロールを作成し、それぞれに固有の名前を設定して明確に区別できるようになりました。</p>
<p><a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/#external-controls">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/527007">イシュー</a></p>
<h3>GitLab Duo脆弱性の修正のためのSASTカバレッジの向上</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>これまでは、次のCommon Weakness Enumeration（CWE）識別子を持つ検出された脆弱性を手動で解決する必要がありました。</p>
<ul>
<li>CWE-78（コマンドインジェクション）</li>
<li>CWE-89（SQLインジェクション）</li>
</ul>
<p>現在は、GitLab Duo脆弱性の修正により、これらの脆弱性を自動的に修正できるようになりました。</p>
<p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/#supported-vulnerabilities-for-vulnerability-resolution">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/534307">イシュー</a></p>
<h3>コンプライアンスフレームワークUIにおける要件のページネーション</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>コンプライアンスフレームワークを作成する際は、最大50個の要件を指定できます。</p>
<p>ただし、これほど多くの要件があると、UIで大きな表示領域を占めるため、コンプライアンスフレームワークの操作が非常に困難になります。</p>
<p>今回のリリースでは、コンプライアンスフレームワークに多数の要件が含まれている場合でも、ユーザーが要件を簡単に閲覧、検索、選択できるよう、要件のページネーション機能を導入しました。</p>
<p><a href="https://docs.gitlab.com/user/compliance/compliance_frameworks/#add-requirements">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/531039">イシュー</a></p>
<h3>コンプライアンスセンターのUIパフォーマンスとフィルタリングを改善</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>コンプライアンスセンターのUIパフォーマンスとフィルタリングオプションの改善を継続しています。今回のリリースでは、次のことを行いました。</p>
<ul>
<li>特に多くの要件とプロジェクトが含まれる場合に、<strong>フレームワークの編集</strong>ページのUIスピードとパフォーマンスを改善しました。</li>
<li>コンプライアンスセンターの<strong>コンプライアンスステータスレポート</strong>タブで、要件、プロジェクト、またはフレームワーク別にグループ化できる新しいフィルタリングオプションを導入しました。</li>
</ul>
<p>これらの改善を行うことで、コンプライアンスセンターを定期的に利用するお客様に対し、コンプライアンスセンターと関連機能が大規模環境でも継続して高いパフォーマンスを発揮できるようにしています。</p>
<p><a href="https://docs.gitlab.com/user/compliance/compliance_center/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/508188">イシュー</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/478216">イシュー</a></p>
<h3>GraphQL APIの<code>projectMembers</code>に新しい<code>accessLevels</code>引数を追加</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GraphQL APIの<code>projectMembers</code>フィールドに<code>accessLevels</code>引数が追加されました。この引数を使用すると、APIコールから直接アクセスレベル別にプロジェクトメンバーをフィルタリングできます。これまでは、プロジェクトメンバーの全リストを取得してからローカルでフィルターを適用する必要があり、これにより計算オーバーヘッドが大幅に増加していました。現在では、プロジェクトの権限分析や所有権グラフの生成がより高速化し、リソース効率も向上しています。この機能強化は、複雑な権限構造を持つ大規模デプロイを管理する組織にとって特に価値があります。</p>
<p><a href="https://docs.gitlab.com/api/graphql/reference/#projectprojectmembers">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/541386">イシュー</a></p>
<h2>バグ修正、パフォーマンスの改善、UIの改善</h2>
<p>GitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。</p>
<p>18.1で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。</p>
<ul>
<li><a href="https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&amp;state=closed&amp;label_name%5B%5D=type%3A%3Abug&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&amp;milestone_title=18.1">バグ修正</a></li>
<li><a href="https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Aperformance&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&amp;milestone_title=18.1">パフォーマンスの改善</a></li>
<li><a href="https://papercuts.gitlab.com/?milestone=18.1">UIの改善</a></li>
</ul>
<h2>非推奨事項</h2>
<p>新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、<a href="https://docs.gitlab.com/ee/update/deprecations.html">GitLabドキュメント</a>で確認できます。今後の破壊的な変更について通知を受け取るには、<a href="https://about.gitlab.com/breaking-changes.xml">破壊的な変更のRSSフィードにサブスクライブ</a>してください。<a href="https://docs.gitlab.com/ee/update/deprecations.html#resource-owner-password-credentials-grant-is-deprecated"></a><a href="https://docs.gitlab.com/ee/update/deprecations.html#coverage-guided-fuzz-testing-is-deprecated"></a></p>
<h2>削除された機能と破壊的な変更</h2>
<p>削除されたすべての機能の一覧は、<a href="https://docs.gitlab.com/ee/update/deprecations.html">GitLabドキュメント</a>で確認できます。今後の破壊的な変更について通知を受け取るには、<a href="https://about.gitlab.com/breaking-changes.xml">破壊的な変更のRSSフィードにサブスクライブ</a>してください。</p>
<p><a href="https://docs.gitlab.com/ee/update/deprecations.html#api-discovery-will-use-branch-pipelines-by-default"></a><a href="https://docs.gitlab.com/ee/update/deprecations.html#toggle-notes-confidentiality-on-apis"></a></p>
<h3>変更履歴</h3>
<p>変更内容をすべて表示するには、次のページから変更履歴を確認してください。</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md">GitLab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md">GitLab Runner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md">VS CodeのGitLab Workflow</a></li>
<li><a href="https://gitlab.com/gitlab-org/cli/-/releases">GitLab CLI</a></li>
</ul>
<h3>インストール</h3>
<p>GitLabを新規にインストールする場合は、<a href="https://about.gitlab.com/ja-jp/install/">GitLabのダウンロードページ</a>をご覧ください。</p>
<h3>更新事項</h3>
<p><a href="https://about.gitlab.com/ja-jp/update/">更新ページ</a>をご覧ください。</p>
<h3>ご不明な点がある場合</h3>
<p>ご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、<a href="https://forum.gitlab.com/">GitLabフォーラム</a>にアクセスして質問を投稿してください。</p>
<h3>GitLabサブスクリプションプラン</h3>
<ul>
<li><a href="https://about.gitlab.com/pricing/">Free</a><br>
ユーザー向けの永久無料機能を提供</li>
<li><a href="https://about.gitlab.com/pricing/premium/">Premium</a><br>
チームの生産性と調整を強化</li>
<li><a href="https://about.gitlab.com/pricing/ultimate/">Ultimate</a><br>
組織全体のセキュリティ、コンプライアンス、プランニングに対応</li>
</ul>
<p>GitLabのすべての機能を<a href="https://about.gitlab.com/free-trial/?hosted=saas">無料</a>でお試しいただけます。</p>
<p><em>監修：ソリス ジェレズ / Jerez Solis <a href="https://gitlab.com/jerezs">@jerezs</a>
（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）</em></p>
<h3>過去の日本語リリース情報</h3>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-18-01-release">GitLab 18.1</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/">GitLab 18.0</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/">GitLab 17.11</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/">GitLab 17.10</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/">GitLab 17.9</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/">GitLab 17.8</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/">GitLab 17.7</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/">GitLab 17.6</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/">GitLab 17.5</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/">GitLab 17.4</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/">GitLab 17.3</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/">GitLab 17.2</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/">GitLab 17.1</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/">GitLab 16.11</a></li>
</ul>
]]></content>
        <author>
            <name>GitLab Japan Team</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab-japan team</uri>
        </author>
        <published>2025-06-20T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab Ultimate for IBM Z：メインフレーム向けモダンDevSecOps]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/gitlab-ultimate-for-ibm-z-modern-devsecops-for-mainframes/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/gitlab-ultimate-for-ibm-z-modern-devsecops-for-mainframes/"/>
        <updated>2025-06-20T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>GitLabとIBMは、エンタープライズ開発における根本的な断絶を解決するためにパートナーシップを結びました。それは、メインフレーム開発者が分散環境の開発者と同じモダンなツール、ワークフロー、コラボレーション機能を使用できるようにすることです。GitLab Ultimate for IBM Zは、GitLab認定の統合DevSecOpsソリューションであり、メインフレーム環境に特化して設計されています。このソリューションにより、組織は時代遅れのレガシーライブラリマネージャーからのシームレスな移行を促進し、メインフレーム開発ワークフローをモダナイズできます。IBM z/OS上でネイティブに実行されるCI/CDパイプラインにより、お客様はイノベーションの加速と運用コストの削減を実現できます。</p>
<h2>現代におけるメインフレーム開発の課題</h2>
<p>ミッションクリティカルなワークロードにIBM Zシステムを使用するエンタープライズ組織は、従来のDevSecOpsツールでは対応できない課題に直面しています。クラウドネイティブチームは、モダンな<a href="https://about.gitlab.com/ja-jp/topics/ci-cd/">CI/CD</a>パイプライン、協調的な開発、自動化されたテストの恩恵を受けています。一方、メインフレームチームは取り残されることが多く、コストのかかる非効率性と運用サイロにつながる時代遅れのツールに縛られています。</p>
<p>チームはSSH接続や手動ファイル転送などの回避策に頼ることが多く、これらはセキュリティの脆弱性や監査の困難さを生み出します。コンプライアンス要件が厳格な場合、これらの即席のソリューションは受け入れられないリスクとなります。同時に、組織は高価な並行ツールチェーンを維持しており、レガシーメインフレーム開発ツールは、モダンな代替品と比較して限られた機能しか提供しないにもかかわらず、プレミアムライセンスコストがかかっています。</p>
<p>この断片化は2つの問題を生み出します：配信サイクルの遅延と、モダンな開発体験を期待する開発者の採用の困難さです。</p>
<blockquote>
<p><strong>「GitLab Ultimate for IBM Zは、長年の業界課題に対処する重要な一歩を表しています。IDCの調査によると、メインフレーム開発者は、配信の非効率性につながり、新しい人材を引き付けることを困難にするレガシーツールで作業することが多いことが示されています。このソリューションにより、モダンなDevSecOps機能と統一されたワークフローがメインフレームに直接もたらされます。これにより、開発者はより協調的かつ効率的に作業できるようになり、組織はイノベーションを加速し、メインフレーム開発をより広範なデジタルトランスフォーメーション戦略に統合することができます。」</strong> \</p>
<ul>
<li>Katie Norton、IDC DevSecOpsおよびソフトウェアサプライチェーンセキュリティ リサーチマネージャー</li>
</ul>
</blockquote>
<h2>統一された開発環境</h2>
<p>真のモダナイゼーションとは、単にメインフレーム開発を更新することではありません。それは、メインフレーム、クラウドネイティブ、Web、モバイル開発チームがシームレスに協力できる統一プラットフォームを作成することを意味します。</p>
<p>GitLab Ultimate for IBM Zにより、開発者はz/OS、クラウド、またはオンプレミスインフラストラクチャにデプロイする場合でも、一貫したワークフローを使用できます。知識はサイロ化されるのではなく、チーム間で共有されます。レガシーシステムは動作を継続しながら、チームは独自のペースでモダンなプラクティスを採用できるため、組織はビジネスの中断なく段階的にモダナイズできます。</p>
<p>組織がハイブリッドクラウド戦略を追求する中、GitLabはメインフレームとクラウドネイティブ環境にまたがるアプリケーションの基盤を提供します。</p>
<h2>GitLab Ultimate for IBM Zとは？</h2>
<p>GitLab Ultimate for IBM Zは、ネイティブz/OSランナーサポートを提供し、メインフレームインフラストラクチャ上で直接シームレスなCI/CDパイプライン実行を可能にします。このGitLab認定ソリューションは、エンタープライズアプリケーションが要求するセキュリティと信頼性を維持しながら、複雑な回避策の必要性を排除するのに役立ちます。</p>
<p>GitLabの包括的なDevSecOpsプラットフォームとIBMの深いメインフレーム専門知識の組み合わせにより、市場で独自のものが生まれます：エンタープライズレガシーシステムとクラウドネイティブイノベーションの間の真の架け橋を提供する認定ソリューションです。</p>
<h2>GitLab Ultimate for IBM Zの機能</h2>
<p>GitLab Ultimate for IBM Zは、重要なビジネスシステムを維持しながらメインフレーム開発をモダナイズするために必要なツールをエンタープライズチームに提供します。</p>
<p><strong>ネイティブz/OSランナーサポート</strong>は、リモート接続に関連するセキュリティリスクとスケーラビリティのボトルネックを排除し、メインフレームコードが存在する場所で直接実行されるCI/CDパイプラインを通じて配信を加速します。</p>
<p><strong>統一されたソースコード管理</strong>は、高価なレガシーライブラリマネージャーをGitLabの検索可能でバージョン管理されたリポジトリシステムに置き換えることで、ツールチェーンをモダナイズし、ライセンスコストとメンテナンスのオーバーヘッドを削減するのに役立ちます。</p>
<p><strong>IBM Developer for z/OS Enterprise Edition (IDzEE)とのシームレスな統合</strong>は、依存関係ベースのビルド、自動コードスキャン、および使い慣れた開発環境内の包括的なデバッグツールを通じて、より高速なソフトウェアリリースを実現し、品質とセキュリティの両方を向上させます。</p>
<p><strong>メインフレームと分散環境全体のエンドツーエンドの可視性</strong>は、計画から本番までの包括的なプロジェクト管理を提供し、モダンな次世代開発ツールを通じて人材を維持するのに役立つ自動化されたDevOpsワークフローを可能にします。</p>
<h2>今すぐメインフレーム開発環境をモダナイズ</h2>
<p>GitLab Ultimate for IBM Zは、メインフレーム開発体験を変革する準備ができている組織向けに、現在利用可能です。詳細については、<a href="https://about.gitlab.com/partners/technology-partners/ibm/">GitLabとIBMのパートナーシップページ</a>をご覧ください。</p>
]]></content>
        <author>
            <name>Mike Flouton</name>
            <uri>https://about.gitlab.com/blog/authors/mike-flouton</uri>
        </author>
        <author>
            <name>Andy Bradfield</name>
            <uri>https://about.gitlab.com/blog/authors/andy-bradfield</uri>
        </author>
        <published>2025-06-20T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[Dockerとは：超入門編]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/what-is-docker/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/what-is-docker/"/>
        <updated>2025-06-18T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>Dockerコンテナ技術は、2013年にオープンソースの「Dockerエンジン」として公開され、翌年2014年には本番環境向けの商用版が発表されました。その後約10年の間に、Dockerは使いやすさと高い利便性から、IT業界で瞬く間に広く普及してきました。これからもその人気は高まっていくでしょう。</p>
<p>しかしその一方で、いまだに「Dockerとは何ですか」という声もよく耳にします。この記事では、Docker環境の導入を検討中で、Dockerにまだ不慣れなデベロッパーやプログラマーの皆様を対象に、Dockerの基本を解説します。Dockerに触れたことのない初心者向けの「Docker超入門編」です。</p>
<h2>目次</h2>
<ol>
<li>
<p>Dockerとは：超入門編</p>
</li>
<li>
<p>Dockerの目的</p>
<ul>
<li>Dockerとは</li>
<li>Dockerでできること</li>
<li>Dockerイメージとは</li>
<li>Dockerコンテナとは</li>
<li>Dockerfileとは</li>
<li>Dockerはなぜ重要なのか</li>
</ul>
</li>
<li>
<p>Dockerの主な機能</p>
<ul>
<li>Dockerの特徴</li>
<li>Docker Composeとは</li>
</ul>
</li>
<li>
<p>アプリケーションのデプロイにおけるDockerのメリット</p>
<ul>
<li>開発環境と本番環境のシームレス化</li>
<li>起動の軽量化・処理速度の高速化</li>
<li>バージョン管理のしやすさ</li>
<li>優れたスケーラビリティ</li>
</ul>
</li>
<li>
<p>Dockerのデメリット</p>
<ul>
<li>ひとつのOSを使わなければならない</li>
<li>大規模開発時のオーバーヘッド</li>
<li>技能習得に時間がかかる</li>
<li>セキュリティに脆弱性が生じることもある</li>
<li>コンテナ間での連携が難しい</li>
</ul>
</li>
<li>
<p>GitLabはDockerが抱える課題をどのように解決するのか</p>
</li>
<li>
<p>GitLabのDevSecOpsにおけるDockerの役割</p>
</li>
<li>
<p>まとめ</p>
</li>
<li>
<p>FAQ（よくある質問）</p>
</li>
</ol>
<h2>Dockerの目的</h2>
<p>はじめに、Dockerとはどういったもので、何ができて、どうして便利なのか、なぜ重要なのか、Dockerの目的に着目しながらその概念をまとめていきます。</p>
<h3>Dockerとは</h3>
<p>Dockerは、Linuxのコンテナ技術を用いた軽量なソフトウェアコンテナプラットフォームです。アプリケーションの開発、出荷、実行を簡易化するために設計されました。Dockerを使えば、すべての依存関係と一緒にアプリケーションをパッケージ化できるため、依存関係を一つひとつ手動でインストールする必要がなくなり、一貫性のあるコード実行が可能になります。</p>
<p>Dockerを使えばアプリケーションの実行環境を標準化でき、環境の違いによる問題を減らすことで開発から本番環境へのデプロイ時間を大幅に短縮できます。</p>
<p>Linuxには以前からコンテナ仮想化という技術がありました。この技術を使うと、プログラムを開発・実行環境から隔離することにより、複数のプログラムを素早く実行できます。ただし、この従来型の仮想化技術は、仮想環境を構築するためにホストとなるOS（オペレーティングシステム）に依存する必要がありました。Dockerはこのコンテナ仮想化技術をOSに関係なく簡単に扱えるようにしたソフトウェアといえます。</p>
<p>Dockerの基本概念はイメージとコンテナです。Dockerイメージは、読み取り専用のテンプレートであり、コンテナを作成するための指示が記述されています。たとえば、コンテナで実行するアプリケーションとその依存関係、環境変数、ファイルシステムなどがこれに含まれます。</p>
<h3>Dockerでできること</h3>
<p>Dockerを使うと、1台のマシン中に複数のコンテナ（仮想環境）をビルドできるため、いくつかの開発環境に対応することができます。つまり、1台のサーバー上で複数のアプリケーションを効率的に動かすことができるのです。アプリケーションの開発環境をDockerで構築すれば、たとえば開発環境（Windows）で動いていたアプリケーションがLinux上で起動しない、といった問題は発生しません。Dockerで構築した環境は、他のデベロッパーとクラウド上で簡単に共有できるため、開発作業がスムーズに進められます。</p>
<h3>Dockerイメージとは</h3>
<p>Dockerイメージは、アプリケーションを実行するのに必要なソースコードと必要な依存関係をパッケージ化したものです。Dockerコンテナを実行する際には、このDockerイメージが必要です。</p>
<p>Dockerイメージは、コンテナイメージを構成する複数のファイルに、<code>Dockerfile</code> を合わせてビルドします。つまり、Dockerイメージは、手作業で書くのではなく、コマンドを使って作成します。</p>
<p>そのため、Dockerイメージは単一のファイルではなく、Dockerコンテナの実行に必要なパッケージ（ファイルやメタデータの集合体）であることを理解することが重要です。</p>
<h3>Dockerコンテナとは</h3>
<p>Linuxのコンテナは、アプリケーションを内包し、必要なライブラリや依存関係、ファイルが含まれています。</p>
<p>一方、Dockerコンテナは、Dockerイメージの実行可能なインスタンスです。これはDockerイメージから生成され、アプリケーションを実行するためのランタイム環境です。ただし、ハイパーバイザーを使用する従来の仮想化とは違い、DockerのコンテナはホストOS（オペレーティングシステム）のカーネルで実行されます。Dockerイメージ内には、個別のOSはありません。</p>
<p>Dockerイメージは環境のスナップショットであり、コンテナはソフトウェアを実行する環境といえます。</p>
<h3>Dockerfileとは</h3>
<p><code>Dockerfile</code>は文字情報を主体とするファイルで、ファイルの拡張子はありません。<code>Dockerfile</code>には、アプリケーションの構築から実行までのプロセスに必要なコマンドが記述されています。どのファイルをどこから取得して、どんな処理を行ない、Dockerイメージに含めるのかなどを記述します。</p>
<p><code>Dockerfile</code>は、Dockerイメージを作成するためのテキストファイルです。コンテナイメージをビルドする場合も、コンテナのビルド手順を<code>Dockerfile</code>で定義する必要があります。この<code>Dockerfile</code>には、命令のスクリプトが含まれており、Dockerはコンテナイメージをビルドする際にこのスクリプトを使用します。</p>
<h3>Dockerはなぜ重要なのか</h3>
<p>Dockerは、コンテナに関する既存のコンピューティングの概念、とりわけLinuxの「cgroups」や「namespaces」、「overlayfs」などの技術を活用しています。これは、アプリケーションの依存関係をサーバーやネットワークなどのインフラストラクチャから隔離したいという、デベロッパーやシステムオペレーターのニーズに応えるものでした。</p>
<p>Dockerを使うと、1台のサーバー上でさまざまなアプリケーションを簡単に仮想化・実行できるようになります。さらには、ローカルマシンに依存しない開発環境を実現でき（開発環境の統一）、本番環境に近い環境でのシミュレーションが可能になり、アプリケーションの依存関係も管理できます。加えて、ビルド、テスト、デプロイまでの各プロセスを一貫して行なうことができます。</p>
<h2>Dockerの主な機能</h2>
<p>Dockerは、Linuxのコンテナ技術を使用しています。Dockerコンテナはよく仮想マシンと比較されます。</p>
<p>仮想マシンでは、ホストマシン上でハイパーバイザーを利用してゲストOSを動かし、さらにその上でミドルウェアやライブラリ、さらにその上にアプリなどを実行します。</p>
<p>それに対し、コンテナはホストマシンのカーネルを利用し、プロセスやユーザーなどを隔離します。そのため、非常に軽量で、まるで別のマシンが動いているかのように動作します。その結果、アプリなどを高速に起動、停止することが可能です。</p>
<p>Dockerは、次の4つの構成要素から成り立っています。</p>
<ul>
<li><strong>Dockerイメージ：</strong> アプリケーション実行に必要なソースコード、アプリと依存関係のパッケージ</li>
<li><strong>Dockerコンテナ：</strong> アプリケーションを実行するランタイム環境</li>
<li><strong>Docker Hub：</strong> クラウド上のレジストリサービス。アプリケーションやサービスコンテナのビルドと配信を行なう</li>
<li><strong>Dockerfile：</strong> Dockerイメージを作成するために実行するコマンドライン命令を含むテキストファイル</li>
</ul>
<h3>Dockerの特徴</h3>
<p>Dockerには、次のような特徴があります。</p>
<ul>
<li><strong>軽量かつ高速：</strong> 1つのOSで複数のコンテナを管理でき、仮想マシンより軽量で高速に立ち上げることが可能。</li>
<li><strong>環境の一貫性が保持でき再現性がアップ：</strong> Dockerコンテナは異なるプラットフォームでも一貫して動作するため、ローカル、クラウド、ハイブリッド環境への移行が簡単にできる。
移植性が高い －クラウドシステムとの親和性が高く、主要なクラウドプロバイダーはDockerコンテナの実行をサポートしている。</li>
<li><strong>サンドボックスの提供：</strong> セキュリティ対策やソフトウェア開発において、隔離された仮想環境でプログラムを実行・検証できる。このため、ホストマシンの環境を守ることができる。</li>
<li><strong>IaC（インフラストラクチャのコード化）を使用して、インフラをコード化：</strong> Dockerfileによりミドルウェアのインストールや環境設定をコード化して管理できる。</li>
</ul>
<h3>Docker Composeとは</h3>
<p>Docker Composeは、複数のDockerコンテナを一元管理する、 Dockerアプリケーションのためのツールです。YAMLファイルを使用してアプリケーションのサービスを設定します。単一のコマンドで複数のサービスをまとめて生成したり、起動・停止したりすることができます。</p>
<p>Docker Composeのコマンド例は次のとおりです。</p>
<ul>
<li><strong><code>docker-compose up</code>：</strong> サービス用のコンテナを構築、作成、起動、アタッチします。リンクされているサービスがまだ起動していない場合は、それらも起動します。</li>
<li><strong><code>docker-compose ps</code>：</strong> Docker Composeで管理されている稼働中のサービスを一覧表示します。</li>
<li><strong><code>docker-compose build</code>：</strong> Docker Composeファイルで定義されているサービスをビルド（構築）します。</li>
</ul>
<h2>アプリケーションのデプロイにおけるDockerのメリット</h2>
<p>アプリケーションのデプロイにおけるDockerのメリットは次のとおりです。</p>
<h3>開発環境と本番環境のシームレス化</h3>
<p>コンテナ技術の利用を開発環境と本番環境で統一することで、環境の違いにより起こる問題を減らすことができます。その結果、デベロッパーと運用チームとの連携がスムーズに行われ、チーム間で発生していた問題も最小限に抑えられます。</p>
<h3>起動の軽量化・処理速度の高速化</h3>
<p>Dockerのコンテナ技術は従来の仮想環境より軽く、アプリを瞬時に起動できます。これは、CPUやメモリなどのコンピュートリソースを必要最低限しか使用しないためです。起動速度が上がることで、開発にも集中できます。</p>
<h3>バージョン管理のしやすさ</h3>
<p>Dockerでは、GitLabなどのソースコードのバージョン管理ツールを使用できるため、バージョン管理の可視化が進むだけでなく、ロールバックやアップデートも簡単に行なえるようになります。</p>
<h3>優れたスケーラビリティ</h3>
<p>コンテナは軽量で拡張性に優れています。必要に応じて簡単に増減できます。これにより、アプリケーションの拡張やスケーリングを迅速に行なえるため、変わりゆく状況にも柔軟に対応できます。</p>
<h2>Dockerのデメリット</h2>
<p>Dockerにはさまざまなメリットがありますが、いくつかデメリットも存在します。以下にデメリットを挙げます。</p>
<h3>1つのOSを使わなければならない</h3>
<p>Dockerは1つのOS上で複数のコンテナを作成します。これにより起動速度や処理速度の面でメリットがありますが、同時にデメリットになることもあります。たとえば、異なるOS環境で検証をしたい場合には、別のマシンや仮想マシンを準備する必要が生じます。</p>
<h3>大規模開発時のオーバーヘッド</h3>
<p>Docker自体は軽量ですが、大規模システムに拡張する場合には、Dockerの管理に伴う負荷が発生します。Dockerは1台のサーバーで多数のコンテナを実行できますが、その反面、管理やオーケストレーションが必要になり、その処理のためにオーバーヘッドが生じる場合があります。Dockerだけですべての管理を行なうのが困難になることもあります。</p>
<h3>技能習得に時間がかかる</h3>
<p>Dockerは他の仮想マシンと異なる手法で仮想環境を構築します。つまり、デベロッパーは新しいコンセプトをすべてゼロから習得しなければならず、それには時間がかかります。Dockerの動作原理をきちんと理解せずに使用すると、あとでトラブルや問題が発生することもあります。Dockerについてしっかりと学習してから運用に取り組むようにしましょう。</p>
<h3>セキュリティに脆弱性が生じることもある</h3>
<p>Dockerはコンテナ型アーキテクチャです。1台のマシン上で複数のコンテナが動作するため、このことに起因する脆弱性には注意が必要です。たとえば、複数のコンテナがホストOSのリソースやカーネルを共有しているため、一つのコンテナに脆弱性があった場合、全体にその影響が及ぶ可能性があります。</p>
<h3>コンテナ間での連携が難しい</h3>
<p>複数のコンテナ間での連携を検討している場合、各種設定が難しいために、運用時に問題が発生することがあります。たとえば、アプリとデータベースを別のコンテナで作成し、一緒に運用したい場合には、同一ホスト内で通信設定をしなければなりません。ポートやソケットを開放する場合にはセキュリティ面でリスクが生じます。それを避けるために設定を複雑にしてしまうと、今度は運用面で問題が起きる恐れがあります。コンテナを連携させる際は、設計段階から十分に検討することが重要です。</p>
<h2>GitLabはDockerが抱える課題をどのように解決するのか</h2>
<p>Dockerコンテナ内にGitLabをインストールすることができます。<a href="https://about.gitlab.com/ja-jp/platform/">GitLab</a>は、Git「分散型バージョン管理システム」を主体としたDevSecOpsプラットフォームです。ソフトウェア開発ライフサイクル全体に対応する単一のプラットフォームで、GItLabを活用することで高品質なソフトウェアの迅速なデリバリーを実現できます。</p>
<p>Dockerコンテナ内にGitLabをインストールすると、GitLabインスタンスにアクセスできるようになります。Dockerコンテナへの<a href="https://about.gitlab.com/ja-jp/install/">GitLab Dockerイメージのインストールは公式にサポート</a>されています。</p>
<p>Dockerが抱えるいくつかの問題のうち、特にセキュリティについては、GitLabのDevSecOps（開発、セキュリティ、運用）を活用して対処することができます。GitLabのDevSecOpsでは、<a href="https://about.gitlab.com/ja-jp/topics/ci-cd/shift-left-devops/">シフトレフト</a>を重視しており、セキュリティ対策を開発サイクルの早い段階に組み込むことにより、コンテナイメージの持つセキュリティの問題の早期発見と対応を図っています。継続的インテグレーションによってこのシフトレフトのコンセプトを実践することで、セキュリティ対応にかかっていたコストを削減できます。</p>
<p>DevSecOpsにおいて重要なCI/CDを実現するためには、自動化が欠かせません。GitLabではパイプラインがCI/CDの命令をまとめています。そして、その指示に従いプロセスの自動化を実現するときの基盤になっているのが<a href="https://docs.gitlab.com/runner/">GitLab Runner</a>（英語）です。GitLab Runnerはセキュリティのシフトレフトを実現する上で重要な役割を果たしています。</p>
<p>GitLab Runnerはセキュリティスキャンやテストを指定したタイミングで自動で実行してくれます。また、レポート作成ジョブを実行して、ダッシュボードに最新情報を表示することも可能です。</p>
<h2>GitLabのDevSecOpsにおけるDockerの役割</h2>
<p>GitLabを活用したDevSecOpsインテグレーションにおいても、Dockerは非常に大切な役割を担っています。</p>
<h3>CI/CDジョブのコンテナ化</h3>
<p>GitLab CI/CDでは、CI/CDパイプラインでDockerコンテナを使用することで、次のようなことが可能になります。</p>
<ul>
<li><strong>一貫性：</strong> CI/CDジョブはコンテナ内で実行されるため、依存関係や環境の違いによるエラーが防げます。</li>
<li><strong>スケーラビリティ：</strong> コンテナは軽量かつ迅速に起動でき、大規模なパイプラインでも効率的に実行できます。</li>
<li><strong>環境の柔軟性：</strong> ジョブごとに異なるDockerイメージを指定できるため、必要な環境を簡単に準備できます。</li>
</ul>
<p>GitLab RunnerのDockerイメージは、UbuntuまたはAlpine Linuxをベースにしています。Dockerイメージは標準の<code>gitlab-runner</code>コマンドを内包しており、ホストに直接GitLab Runnerをインストールしたかのように動作します。</p>
<h3>セキュリティスキャンの自動化</h3>
<p>セキュリティはDevSecOpsでの重要な要素であり、Dockerはこれをサポートします。</p>
<ul>
<li><strong>コンテナイメージのセキュリティスキャン：</strong> GitLabには、CI/CDパイプラインでDockerイメージをスキャンする機能があります。このスキャンにより脆弱性がチェックされ、イメージ内の依存関係やコードの安全性を評価できます。</li>
<li><strong>コンテナ脆弱性スキャンの自動化：</strong> GitLabにはTrivyやAquaなどのセキュリティツールを統合できます。DockerイメージのOSやアプリケーションが最新であるか、既知の脆弱性がないかをチェックします。</li>
</ul>
<h3>IaC（インフラストラクチャのコード化）と環境管理</h3>
<ul>
<li><strong>再現性：</strong> DockerをGitLabのCI/CDジョブ内で使用することで、開発環境と本番環境の整合性を保つことできます。</li>
<li><strong>ステージングやテスト環境を即時に構築：</strong> Docker ComposeやKubernetesと連携することで、特定のブランチやマージリクエストごとに分離された環境をGitLabで作成できます。これにより、テストやセキュリティスキャンを効率的に実行できます。</li>
</ul>
<h3>デプロイの効率化</h3>
<p>GitLabは、Dockerを使用する以下のデプロイパターンをサポートしています。</p>
<ul>
<li><strong>Dockerイメージのビルドとプッシュ：</strong> アプリをコンテナイメージとしてビルドして、GitLabのContainer Registryや他のDockerレジストリにプッシュします。</li>
<li><strong>継続的デリバリー：</strong> Dockerイメージを使ってコンテナオーケストレーションツールにデプロイすることで、迅速で安全なリリースが可能になります。</li>
</ul>
<h3>マイクロサービスアーキテクチャのサポート</h3>
<p>GitLabとDockerを組み合わせることで、マイクロサービスアーキテクチャを簡単に構築できます。マイクロサービスは別々のDockerコンテナとして実行します。GitLab CI/CDパイプラインを使うと、以下のことを管理できます。</p>
<ul>
<li>サービス間の依存関係の設定</li>
<li>個別のセキュリティスキャン</li>
<li>バージョン管理（ロールバックが容易になります）</li>
</ul>
<h2>まとめ</h2>
<p>2013年の公表以来、Dockerは瞬く間にIT業界に広く普及しました。本記事では、Dockerの基本概念、基本技術、Dockerを使って何ができるのか、なぜDockerが重要なのか、Dockerを理解上でよく目にする用語などについて紹介してきました。</p>
<p>Dockerを使う場合には、DevSecOpsにとって大切なCI/CDを実現するためにも、GitLab CI/CDなどの自動化ツールの導入をおすすめします。GitLab のCI/CDパイプラインでDockerコンテナを使用することで、開発における一貫性の維持、スケーラビリティの実現、柔軟な環境の準備が可能になります。</p>
<h2>FAQ（よくある質問）</h2>
<h3>Dockerで何ができるのか？</h3>
<p>Dockerコンテナは、軽量でスタンドアロンの仮想化技術であり、アプリケーションコード、その依存関係、ライブラリをすべてパッケージ化します。Dockerを使うと、1台のマシン上に複数のコンテナ（仮想環境）を構築でき、開発環境や検証環境の統一が図れます。詳しくは、記事の本文をご覧ください。</p>
<h3>Dockerは何に使うのか？</h3>
<p>Dockerは、デベロッパーがアプリケーションとその依存関係をシステムから切り離したいとき使用します。コンテナにはアプリケーションとその依存関係がまとめられており、軽量な実行環境を提供します。詳しくは、記事の本文をご覧ください。</p>
<h3>Dockerコンテナとは何ですか？</h3>
<p>Dockerイメージが実行時にコンテナになります。Dockerコンテナは、アプリケーションを実行するためのランタイム環境です。Dockerコンテナに関する詳細は、記事の本文をご覧ください。</p>
<p><em>監修：川瀬 洋平 <a href="https://gitlab.com/ykawase">@ykawase</a></em></p>
<p><em>（GitLab合同会社 カスタマーサクセス本部 シニアカスタマーサクセスマネージャー）</em></p>
]]></content>
        <author>
            <name>GitLab Team</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab-team</uri>
        </author>
        <published>2025-06-18T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[🌞 6月のMonday Merge：GitLab 18登場！ ただのアップデートじゃない、その理由とは？]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/monday-merge-2025-june-9/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/monday-merge-2025-june-9/"/>
        <updated>2025-06-09T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>みなさん、こんにちは！6月のMonday Mergeにようこそ。今回も最新情報をお届けします！</p>
<p>大規模アップデートや新しいAI機能、次のスプリントに役立つDevSecOpsインサイトが満載です。今月の注目ポイント？それは GitLab 18の正式リリースです。しかも今回から、PremiumおよびUltimateのすべてのお客様が、GitLab Duoの主要なAI機能を追加料金なしでご利用可能になりました。</p>
<p>それでは、さっそく見ていきましょう👇</p>
<h2>GitLab 18：GitLabにとっての小さな一歩、DevSecOpsにとっての大きな飛躍</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687125/Blog/Content%20Images/image6.png" alt="gitlab 18"></p>
<p>GitLab 18.0のリリースでは、PremiumとUltimateプランにGitLab Duoが標準搭載され、AIネイティブなDevSecOpsの新たな時代が始まります。</p>
<h3>新機能ハイライト</h3>
<ul>
<li>Duoコード提案 &amp; GitLab Duo ChatがIDEで利用可能に：コードの記述から理解、リファクタリング、テストまでリアルタイムで支援します。</li>
<li>リポジトリX-Ray（Self-Hostedはベータ版）：リポジトリ構造とコードの健全性を可視化します。</li>
<li>GitLab Duoコードレビューの自動有効化：すべてのマージリクエストにAIレビューを適用。</li>
<li>プロンプトキャッシュ機能：AI応答の遅延を軽減し、スムーズなやり取りを実現。</li>
</ul>
<p>最新のグローバルDevSecOps調査では、デベロッパーがコード以外の作業に79％もの時間を費やしていることが明らかになりました。つまり、AIを“コード支援”のみに使っているだけでは、AIの真の力を活かしきれていません。GitLab 18では、ソフトウェア開発ライフサイクル全体にAIを組み込み、面倒な作業を減らして本質的なイノベーションに集中できる環境を提供します。</p>
<p>このリリースを可能にしたのは、世界中の素晴らしいコミュニティの力です。328件のコントリビュートにより支えられたGitLab 18は、まさに「使う人たちによって作られた」リリースです。</p>
<p>今月の注目コントリビューターは、Adfinis社CTOのMichael Hoferさん。GitLabのGeo機能やSecrets Managerの改善など、本当にたくさんの貢献をしてくださいました。オープンソースにかける想いと、周囲を巻き込む力に、私たちもたくさんの学びをもらっています。</p>
<p>👉 <a href="https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/">GitLab 18 リリースノート全文を読む</a></p>
<h2>事例のご紹介：Ignite by FORVIA HELLA</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687125/Blog/Content%20Images/image3.png" alt="ignite"></p>
<p>ソフトウェアが自動車産業の中核となる今、<a href="https://www.linkedin.com/company/ignite-by-forvia-hella/">Ignite by FORVIA HELLA</a>は次世代車両開発のために、ベルリンを拠点とするソフトウェア・イノベーションハブ Ignite を立ち上げました。</p>
<p>CTOのFelix Kortmann氏はGitLab Duoについてこう語ります。</p>
<p>「Duoのインテリジェントなコード提案は、デベロッパーにとって日常の必需品です。チャット機能と組み合わせることで、即座のフィードバックと反復が可能になり、開発サイクルが短縮され、コードの安全性も向上しました。私たちのワークフローに、シームレスかつ強力に統合されています」</p>
<p>GitLab CI/CDとAI機能を組み合わせることで、Igniteは反復テストや品質チェックを自動化。コードがpushされた瞬間に自動処理が走り、早期の課題検出とスピーディーなデリバリーを実現しています。</p>
<h2>GitLab 18のローンチイベントがバーチャルで開催！しかもアジア時間に！さらに日本語字幕付き！</h2>
<p>2025年6月24日（火）13時より、GitLab 18の新機能を紹介するグローバルオンラインイベントを開催します。</p>
<h3>✨ イベント内容</h3>
<ul>
<li>GitLab 18の新機能を実演するライブデモ</li>
<li>GitLabのリーダーたち（Bill Staples、Sabrina Farmer、Josh Lemos、David DeSantoほか）によるインサイト共有</li>
<li>新ライブシリーズ「The Developer Show」の初公開： コーディングデモ、プロダクト解説、コミュニティのストーリーをお届け！</li>
</ul>
<p>ご都合の良い時間帯を選んでぜひご参加ください。質問も大歓迎です！</p>
<p>👉 <a href="https://about.gitlab.com/eighteen/">今すぐイベント登録する</a></p>
<h2>GitLab Duo、Premiumにも標準搭載</h2>
<p>GitLab 18のリリースにより、Duoの主要機能がPremiumおよびUltimateで標準提供されます。追加ツールも、追加費用も不要。IDE上でスマートな開発がすぐに始められます。</p>
<h3>機能ハイライト</h3>
<ul>
<li>GitLab Duoコード提案：20以上のプログラミング言語で高速なコード作成・リファクタリング</li>
<li>GitLab Duo Chat：コードの解説、テスト生成、トラブル対応を簡単に</li>
</ul>
<p>さらに、より高度な機能を求めるチームには、Ultimate限定だったDuo EnterpriseがPremiumでも利用可能に。<a href="https://docs.gitlab.com/user/gitlab_duo/use_cases/#root-cause-analysis-use-cases">GitLab Duo根本原因分析</a>、GitLab Duo Self-Hosted、AIコードレビューなどが利用できます。</p>
<p>👉 <a href="https://about.gitlab.com/ja-jp/blog/gitlab-premium-with-duo/">Duoを有効にして、開発を始めましょう</a></p>
<h2>AWS Summit で直接お会いしましょう！</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687124/Blog/Content%20Images/image1.png" alt="aws summit"></p>
<p>東京をはじめ、世界各地のAWS SummitにGitLabも出展します！GitLabとAWSの連携機能を体験できるほか、安全なクラウドネイティブ開発の事例もご紹介。もちろん、ノベルティもご用意しています！</p>
<p>🗓️ 6月のイベント予定</p>
<ul>
<li>シドニー｜6月4日〜5日</li>
<li>ストックホルム｜6月4日</li>
<li>ハンブルク｜6月5日</li>
<li>マドリード｜6月11日</li>
<li>ミラノ｜6月18日</li>
<li>ムンバイ｜6月19日</li>
<li>東京｜6月25日〜26日</li>
</ul>
<p>👉 <a href="https://about.gitlab.com/ja-jp/events/aws-summits/">AWS Summit 2025でお会いできるのを楽しみにしています！</a></p>
<h2>今月のおすすめ読書</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687125/Blog/Content%20Images/08_LinkedIn_Header_Images_April_What_We_re_Reading.png" alt="08 Header Images April What We’re Reading"></p>
<ul>
<li><strong>A Practical Roadmap for Adopting Vibe Coding（Vibe Coding 導入のための実践ロードマップ）</strong>
スピードを重視するあまり、品質や保守性が犠牲にならないよう、適切なガバナンスが必要だとGitLabの戦略VPであるEmilio Salvadorが解説。</li>
</ul>
<p>🔗 <a href="https://thenewstack.io/a-practical-roadmap-for-vibe-coding-adoption/">The New Stackの記事を読む（英語）</a></p>
<ul>
<li>
<p><strong>3 ways APAC engineering teams can operationalise AI（APACの開発チームがAIを活用する3つの方法）</strong><br>
APACのエンジニアリングチームによる日常業務へのAI統合、業務効率化、抵抗感の軽減、ビジネス価値の可視化についてGitLabのCTOであるSabrina Farmerが説明します。<br>
🔗 <a href="https://www.frontier-enterprise.com/3-ways-apac-engineering-teams-can-operationalise-ai/">Frontier Enterpriseの記事を読む</a></p>
</li>
<li>
<p><strong>Beyond Culture: Addressing Common Security Frustrations（文化を越えて：セキュリティ課題の根本に向き合うには）</strong><br>
文化づくりも重要ですが、開発とセキュリティの基本設計から見直す必要があります。GitLab最高情報セキュリティ責任者のJosh Lemosによる解説記事。<br>
🔗 <a href="https://thenewstack.io/beyond-culture-addressing-common-security-frustrations/">The New Stackの記事を読む（英語）</a></p>
</li>
<li>
<p><strong>The Field CTO View: AI, Vibe Coding, and Developer Skillsets（フィールドCTOの視点：AIとVibe Coding、デベロッパーのスキルセットのこれから）</strong>
企業のIT部門ではAIがどう実装されているのか？ デベロッパーの適応はどう進んでいるのか？GitLabのフィールドCTO部門責任者が答えています。<br>
🔗 <a href="https://thenewstack.io/the-field-cto-view-ai-vibe-coding-and-developer-skillsets/">The New Stackの記事を読む（英語）</a></p>
</li>
</ul>
<h2>今月のひとこと</h2>
<p>最後に、私が心に留めている言葉をシェアします。完璧を目指すよりも、まずは一歩を踏み出すこと。大きなアイデアは、小さな行動から始まります。</p>
<p>「何かを始める方法は、話すのをやめて行動することだ」– ウォルト・ディズニー</p>
<p>これからも、ひとつずつマージを重ねながら、学び、作り、そして成長していきましょう 💜</p>
<p>🦊 また次回まで！</p>
<p>GitLabコミュニティの一員でいてくださり、ありがとうございます！みなさんがGitLab 18でどんなものを作ってくださるのか、私たちも楽しみにしています。バーチャルイベントの登録と、AI機能の活用開始もお忘れなく。それではまた次回のMonday Mergeでお会いしましょう。Happy Merging!</p>
<p><a href="https://www.linkedin.com/in/sugaroverflow/">Fatima Sarah Khalid</a> | GitLab Developer Advocate
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687125/Blog/Content%20Images/SignOffBanner.png" alt="SignOffBanner"></p>
]]></content>
        <author>
            <name>GitLab Japan Team</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab-japan team</uri>
        </author>
        <published>2025-06-09T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[IDE、そしてWeb IDEとは]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/what-is-ide/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/what-is-ide/"/>
        <updated>2025-06-03T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>Web IDEとは、クラウドベースで機能する、Webブラウザ上でソースのコミットまで行える高度なIDEです。では、IDEとは？ Web IDEやIDEを知らなかった人にもわかりやすいように、その仕組みや概要を、ここで簡単に説明します。</p>
<h2>目次</h2>
<ul>
<li>IDE（統合開発環境）とは</li>
<li>IDEの主な特徴</li>
<li>IDEの仕組み</li>
<li>IDEの種類</li>
<li>IDEを使うメリット</li>
<li>IDEの例</li>
<li>Web IDEとは</li>
<li>IDEのFAQ（よくある質問）</li>
</ul>
<h2>IDE（統合開発環境）とは</h2>
<p>IDEはIntegrated Development Environmentの略で、日本語では「統合開発環境」と訳されます。IDEは、開発者がソフトウェアのコードを開発する際に必要なソフトウェアをひとつにまとめ、単一の画面で操作できるようにしたものです。</p>
<p>プログラミングには次のようなプログラムが必要になります。</p>
<ul>
<li>テキストエディタ：ソースコードを記述</li>
<li>コンパイラー：ソースコードからオブジェクトコードを生成</li>
<li>リンカー：ターゲットとなるCPU用に実行コードを生成</li>
<li>デバッガー：作成したプログラムのバグ検出に使用</li>
<li>コードのバージョン管理：ほとんどのIDEはシームレスにバージョン管理システムを統合</li>
<li>自動化ビルド：ビルドプロセスを自動化</li>
</ul>
<p>IDEがなかった時代は、これら一つひとつを手作業で統合しなければなりませんでした。しかし、現在ではすべてがIDEツールに統合されているため、IDEをインストールするか、Web IDEにアクセスすれば、開発環境が瞬時に整います。ほとんどのIDEには、ソースコードを自動的に書いたり、編集したりするための機能が含まれています。そのため、コード開発を効率的に行うことが可能になります。</p>
<h2>IDEの主な特徴</h2>
<p>IDEはこれまで、パソコンにインストールして使用するものが主流でしたが、現在はWeb IDEなど、クラウドベースのものが増えてきています。GitLabのWeb IDEも、Webブラウザにアクセスできれば、簡単に開発ができるため、複数の開発者で開発環境を共有することが可能です。</p>
<p>統合開発環境（IDE）の特徴は、次のとおりです。</p>
<ol>
<li>時間の節約：上述のように、各種プログラムがひとつのプラットフォーム上に統合されているため、ソフトウェア開発にかかる時間が短縮できます。</li>
<li>チームでの開発の効率化：バージョン管理やソースコードの管理など、引き継ぎにかかる手間が省け、ミスが予防できます。</li>
<li>ヒューマンエラーの防止：IDEのエディタには入力サポート機能があり、コンパイラにはシンタックスチェック、つまり構文の間違いチェック機能があります。こういった機能はヒューマンエラーを防止してくれます。</li>
</ol>
<h2>IDEの仕組み</h2>
<p>IDEとは、ソフトウェアの開発で使用するさまざまなソフトウェアを支援ツールと合わせてまとめ、統合開発環境として使えるようにしたものです。</p>
<h2>IDEの種類</h2>
<p>IDEには、さまざまな種類があります。用途や目的、プログラミング言語、ターゲットとする OS や動作環境によって、選ぶポイントがあります。何を作るのか、どういうソフトウェアやアプリケーションを開発するのかによっても、最適 IDEは変わります。どのIDEを選ぶかによって、できることが異なるからです。しかし、異なるIDEで共通してできることは、次のようなものです。</p>
<ul>
<li>ソースファイルの構成管理</li>
<li>ビルドの自動実行</li>
<li>デバッグ</li>
</ul>
<p>また、たとえば、プログラミング言語には Java、Swift、C++、C#、UnityやPythonなどがあるため、コードを書く言語に対応しているIDEを選ぶべきでしょう。IDEの種類としては：</p>
<ul>
<li>多言語対応IDE</li>
<li>モバイル開発用IDE</li>
<li>WebまたはクラウドベースのIDE</li>
<li>単言語のIDE</li>
</ul>
<p>などがあります。</p>
<p>また、IDEにはダウンロードして使うものと、クラウドで使用するもの、たとえばWeb IDEなどがあります。クラウドベースのものは、複数の開発者の間で開発環境が共有できるため、各々のチームメンバーの環境設定の違いは問題になりません。また、ビルドの際はCPUの速度低下により時間がかかるものですが、クラウドIDEでは速度低下は発生しません。ソースコード開発は、Gitなどと連携すれば、チーム間での共有も行えます。</p>
<h2>IDEを使うメリット</h2>
<p>IDE、統合開発環境を使うメリットは、一言で言うなら「開発の効率化」です。「IDEとは」で記述したように、IDEにはテキストエディタ、コンパイル、デバッグなどの機能がすべて統合されています。そのため、コード開発の効率化が図れます。</p>
<p>IDEを使うと、環境設定を行う手間が省けますが、逆に、IDEを使わないと、各種ツールを設定しなければならず、時間がかかります。また、IDEはインストール後すぐ使えるため、プログラミングの初心者にもお勧めできます。</p>
<h2>IDEの例</h2>
<p>IDE、統合開発環境にはたくさんの種類があります。現在よく使われているIDEのうち、例を 5 つ挙げます。</p>
<p>●        Visual Studio/Visual Studio Code – Microsoftが開発。市場でとくに人気がある</p>
<p>●        IntelliJ IDEA – JetBrains が開発した、多言語対応型IDE</p>
<p>●        Vim - Bram Moolenaar氏が開発した軽量のテキストエディタでIDEとして使用可</p>
<p>●        Eclipse – IBMが開発した、オープンソースのIDE</p>
<p>●        Jupyter Notebook – Pythonの実行環境をもつ、ブラウザベースのIDE</p>
<h2>Web IDEとは</h2>
<p>Web IDEとは、前述のように、WebベースのIDEで、WebブラウザさえあればアクセスできるIDEを意味します。個々に IDE を利用するのではなく、利用者はみな、ブラウザを介してIDEにアクセスするため、各種設定のわずらわしさから解放されます。</p>
<h3><a href="https://docs.gitlab.com/ee/user/project/web_ide/">GitLab Web IDE</a>を使うメリット</h3>
<p>GitLabには、クラウドベースの、オンライン<a href="https://about.gitlab.com/blog/get-ready-for-new-gitlab-web-ide/">Web IDE（英語版）</a>があります。Web IDEは、コミットのステージング機能を備えた高度なエディタです。Web IDEを使うと、GitLab UIから直接複数のファイルに変更を加えることができます。</p>
<ul>
<li>フレキシブルでカスタム化可能なインターフェース</li>
<li>パネルは折りたたみ可能で、テーマもカスタム化可能</li>
<li>コンテキストアクションとドラッグ＆ドロップサポート</li>
<li>開いているファイル全部を一度に検索・置換</li>
<li>GitLab UIから直接ブラウザで開けるため、クイックなコード修正などに便利</li>
</ul>
<h2>IDEのFAQ（よくある質問）</h2>
<h3>Q: IDE（統合開発環境）を使う理由は何ですか。</h3>
<p>A: IDEはソフトウェア開発環境の一部を構成しています。よく設計されたIDEを使うと、ソフトウェア開発が大幅に効率化できます。</p>
<h3>Q: IDEの3つの主要コンポーネントは何ですか。</h3>
<p>A: コードエディタ、コンパイラ、デバッガーが三大コンポーネントです。</p>
<h3>Q: IDEのインストール、設定方法は？</h3>
<p>A: ニーズに合ったIDEを選び、最新バージョンを公式サイトから入手してインストールします。ほとんどのIDEで、各種設定は使用環境に合わせてカスタマイズ可能です。</p>
<h2>GitLab Web IDEを使ってみる</h2>
<p>GitLabのWeb IDE は、SaaSおよびSelf-Managedのサブスクリプションを購入されているお客様には無償でお試しいただけます。詳しくは<a href="https://about.gitlab.com/direction/create/ide/web_ide/">こちら</a>をご覧ください。</p>
<p>&lt;br&gt;&lt;br&gt;
<em>監修：知念 梨果 <a href="https://gitlab.com/rikachinen">@rikachinen</a></em> &lt;br&gt;
<em>（GitLab合同会社 カスタマーサクセス本部 カスタマーサクセスエンジニア）</em></p>
]]></content>
        <author>
            <name>GitLab Team</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab-team</uri>
        </author>
        <published>2025-06-03T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab DuoとAmazon Qでコードレビューを加速]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/accelerate-code-reviews-with-gitlab-duo-and-amazon-q/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/accelerate-code-reviews-with-gitlab-duo-and-amazon-q/"/>
        <updated>2025-06-02T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>コードレビューは、バグの検出、コードの可読性の向上、コーディング標準の順守の徹底に不可欠ですが、その一方でワークフローにおける大きなボトルネックになることもあります。迅速に機能をリリースしようとする際に、複数のチームメンバーによるコードレビューの完了を待つのは歯がゆいものです。多くのやり取りが発生するディスカッション、スケジュールの衝突、チーム全体の合意形成にかかる時間などによって、本来は簡単なレビューが数日から数週間に及ぶことがあります。</p>
<p>そこでおすすめなのが、<a href="https://about.gitlab.com/ja-jp/blog/2025/04/17/gitlab-duo-with-amazon-q-agentic-ai-optimized-for-aws/">GitLab Duo with Amazon Q</a>です。AWSユーザー向けにソフトウェア開発ライフサイクル全体にわたって自律型AIを提供するGitLab Duo with Amazon Qを使用すれば、レビュープロセスを変革できます。このAI搭載ソリューションは、チームメンバーがこれまで費やしていたほんの一部の時間で、包括的なコードレビューを実行できます。GitLab Duo with Amazon Qは高度な自律型AI機能を活用することで、必要な品質や徹底性を犠牲にすることなく、レビューワークフロー全体を効率化します。たとえるなら、瞬時にコードを分析して実用的なフィードバックを提供できる非常に熟練したレビュアーがいて、いつでも対応可能な状態のようなものです。</p>
<h2>仕組み：コードレビューの開始</h2>
<p>では、GitLab Duo with Amazon Qが実際にどのように機能するかをご説明します。ある機能に関する作業が終わり、ちょうど複数のコード更新を含むマージリクエストを作成したところだとします。コードレビューの開始方法は非常に簡単です。チームメンバーに連絡して対応可能かどうかの返答を待つ代わりに、コメントセクションに「/q review」というシンプルなコマンドを入力するだけです。これだけでAIによるコードレビューがトリガーされます。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097002/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097002096.png" alt="GitLab Duo with Amazon Qを使用したコードレビューがトリガーされている様子"></p>
<p>コマンドが入力されると、Amazon Q Servicesはすぐにコード変更の分析を開始します。レビューを実行中である旨の確認メッセージが表示され、数秒のうちにAIが更新内容のすべての行を調査し、さまざまな側面から潜在的な問題がないかをチェックします。
レビューが完了すると、バグの検出、可読性の改善、構文エラー、チームのコーディング標準への準拠など、すべての基準を網羅した包括的なフィードバックが表示されます。AIによって問題が特定されるだけでなく、修正のためのコンテキストと修正案も提供されるため、対応が必要な箇所とその理由を簡単に把握できます。</p>
<p>この自律型AIアプローチの優れた点は、コードレビューの面倒な作業をAIにまかせられるため、デベロッパーが最も重要な作業である「優れたソフトウェアの開発」に集中できることです。時間を無駄に費やすことなく、バグ検出精度の向上、コーディング標準の順守、コード品質の向上など、徹底したコードレビューのメリットを享受できます。さらに、レビューの待ち時間がなくなるため、デプロイまでの時間が大幅に短縮され、チーム全体の生産性が向上します。</p>
<h2>GitLab Duo with Amazon Qの導入メリット</h2>
<p>GitLab Duo with Amazon Qを使用することで、以下のように開発プロセスを変革できます。</p>
<ul>
<li>品質を妥協しない、迅速なコードレビュー</li>
<li>コードベース全体にわたってコーディング標準を一貫して適用</li>
<li>本番環境に到達する前に問題を修正できるよう、即座にフィードバックを提供</li>
<li>デプロイまでの時間が短縮されるため、より迅速に機能をリリース可能</li>
<li>レビューを何度も行わずに済むため、本質的な問題解決に集中できる時間が増加</li>
</ul>
<p>以下の動画では、GitLab Duo with Amazon Qを使用してコードレビュープロセスに変革をもたらす方法についてご紹介しています。ぜひこの革新的な機能に関する動画をご覧ください。</p>
<p>&lt;!-- blank line --&gt;
&lt;figure class=&quot;video_container&quot;&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/4gFIgyFc02Q?si=GXVz--AIrWiwzf-I&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt; &lt;/iframe&gt;
&lt;/figure&gt;
&lt;!-- blank line --&gt;</p>
<blockquote>
<p>GitLab Duo with Amazon Qの詳細については、 <a href="https://about.gitlab.com/events/aws-summits/">お近くで開催されるAWS Summit</a> にご参加いただくか <a href="https://about.gitlab.com/ja-jp/partners/technology-partners/aws/">GitLab担当者にお問い合わせ</a>ください.</p>
<p>また、自律型AIの今後の計画などについてご紹介するGitLab 18オンラインリリースイベントにもぜひご参加ください。<a href="https://about.gitlab.com/ja-jp/eighteen/">ご登録はこちら</a></p>
</blockquote>
]]></content>
        <author>
            <name>Cesar Saavedra</name>
            <uri>https://about.gitlab.com/blog/authors/cesar-saavedra</uri>
        </author>
        <published>2025-06-02T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[2025年第2四半期の『Forrester Wave™: DevOps Platforms』でGitLabがリーダーの1社に位置付け]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/gitlab-named-a-leader-in-the-forrester-wave-devops-platforms-q2-2025/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/gitlab-named-a-leader-in-the-forrester-wave-devops-platforms-q2-2025/"/>
        <updated>2025-06-02T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>DevSecOpsプラットフォームの選択は、企業が下すテクノロジー上の意思決定のうち、もっとも重要なもののひとつです。そのため、GitLabが<a href="https://about.gitlab.com/forrester-wave-devops-platform/"><strong>2025年第2四半期の『Forrester Wave™: DevOps Platforms』でリーダーの1社として位置付け</strong></a>されたことを大変光栄に思います。GitLabは、ゼロデイ体験、デベロッパー向けツール、ビルドの自動化と継続的インテグレーション、デプロイの自動化、AIリスクの軽減、AIの導入、組み込み型のセキュリティツール、プラットフォームの一貫性など、お客様がもっとも重視する基準において最上位のスコアを獲得しました。</p>
<p><em><strong>「GitLabは、オールインワンソリューションの中でももっともオールインワンであり、一度の購入で標準化を目指す企業に適している」-</strong></em> Forrester Wave™: DevOps Platforms（2025年第2四半期）</p>
<p>この評価には、GitLabに日々寄せられているお客様の声が反映されています。つまり、お客様は安全なソフトウェアをより迅速に提供する必要がありますが、既存のソリューションでは、速度、セキュリティ、またはシンプルさのいずれかを妥協せざるを得ないということです。GitLabはこの3つすべてを妥協せずに実現できます。さらに、5月にリリースした<a href="https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/">GitLab 18.0</a>では、テスト生成、コード提案、コードリファクタリングなどの<a href="https://about.gitlab.com/ja-jp/blog/gitlab-premium-with-duo/">ネイティブAIのGitLab Duo機能</a>をGitLab PremiumとGitLab Ultimateに導入しました。追加費用なしで直接ご利用いただけます。</p>
<blockquote>
<p><a href="https://about.gitlab.com/forrester-wave-devops-platform/">今すぐレポートを読む</a></p>
</blockquote>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673518/Blog/Content%20Images/Image_DevOps-Platforms-Q2-2025.png" alt="『Forrester Wave™: DevOps Platforms』（2025年第2四半期）の画像"></p>
<h2>エンタープライズレベルの制御を行い、AI変革の最前線に立ち続ける</h2>
<p>DevSecOpsは急速に進化しており、AIはその変化の最前線に立っています。しかしながら、多くのAIツールでは、最先端の機能、またはエンタープライズレベルのセキュリティのどちらかを選ばざるを得ません。</p>
<p>Forrester社は、<strong>AIの導入</strong>と<strong>AIリスクの軽減</strong>の両方の基準において、GitLabに5点（最上位の評価）を付けました。セキュリティを維持する革新的なAI機能の開発に注力していることが、お客様だけでなく、多くの方々に認められていることを嬉しく思います。</p>
<p>この2つの強みは、以下を含むGitLab DuoのAI機能群にも反映されています。</p>
<ul>
<li>GitLab Duo Workflow（非公開ベータ版）：開発、セキュリティ、およびオペレーションにわたる複雑なタスクを処理する自律型AIエージェント。エンタープライズレベルのガードレールと監査証跡を提供します。</li>
<li>GitLab Duo Agentic Chat：コードの説明からテスト作成まで、あらゆる場面で文脈を理解する会話型AIアシスト機能を提供します。知的財産の保護とプライバシー管理機能も組み込まれています。</li>
<li>GitLab Duoコード提案：コードブロックの予測補完、関数ロジックの定義、テスト生成、正規表現パターンのような一般的なコードの提案を行うAIアシスト機能です。</li>
<li>ネイティブAIのGitLab Duo脆弱性の修正：自動説明機能やマージリクエストの自動生成を活用して脆弱性を特定し修正することで、開発プロセスを効率化します。</li>
</ul>
<h2>より少ないリソースでより多くのことを実現</h2>
<p>DevSecOpsチームが求めているのは、ソフトウェアデリバリーライフサイクル（SDLC）の一部だけを支援するようなツールやインテグレーションではないという声を、私たちははっきりと受け取っています。SDLC全体をカバーする、シームレスで統合されたデベロッパーエクスペリエンスが必要なのです。</p>
<p>以下の基準でGitLabが獲得したスコアは、当社の顧客重視の戦略を裏付けるものであると考えています。</p>
<ul>
<li><strong>ゼロデイエクスペリエンス</strong>：Forrester社は、GitLabの「強力なゼロデイエクスペリエンス」について、「すべてがすぐに使える状態」であること、そして豊富な移行ツールとチュートリアルが用意されていることを評価しています。</li>
<li><strong>デベロッパー向けツール</strong>：Forrester社は、AWSユーザー向けの自律型AIである<a href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-with-amazon-q-agentic-ai-optimized-for-aws/">GitLab Duo with Amazon Q</a>、クラウド開発環境、統合デベロッパープラットフォーム、ドキュメント用Wikiなどを例として挙げています。</li>
<li><strong>プロジェクト計画と連携</strong>：Forrester社は、GitLabの「強力なコンプライアンスセンター」の存在に加え、トップダウンおよびボトムアップでの連携を促進するツールがあることに注目しています。</li>
<li><strong>パイプラインセキュリティ</strong>：Forrester社は、パイプラインセキュリティの基準においてもGitLabに最上位のスコアを付けました。</li>
<li><strong>ビルドの自動化と継続的インテグレーション</strong>：Forrester社は、マルチステージのビルドパイプラインと強力なセルフホスティングのサポートを備えたビルドの自動化と継続的インテグレーションについて言及しています。</li>
</ul>
<h2>レポートを読む</h2>
<p>2025年第2四半期の『Forrester Wave™: DevOps Platforms』でリーダーの1社として評価されたことは、SDLC全体にわたり信頼できる唯一の情報源を提供する、当社のプラットフォームの幅広い機能と奥深さを物語っています。複数のツールやインテグレーションを使い分ける必要はもうありません。GitLabなら、シームレスで統合されたエクスペリエンスをとおして、生産性の向上、摩擦の軽減を実現します。今回の評価は、GitLabチームの努力、GitLabのオープンソースコミュニティからの多大な貢献、お客様からの貴重なフィードバック、そしてソフトウェア開発の未来を形作るという当社の熱意を反映していると考えております。</p>
<blockquote>
<h4><a href="https://about.gitlab.com/forrester-wave-devops-platform/">今すぐレポートを読む</a></h4>
</blockquote>
<p><em>Forrester社がリサーチに関する発行物に掲載されている特定の企業、製品、ブランド、サービスを推奨することはありません。また、当該発行物に記載されている評価に基づいて、特定の企業やブランドの製品またはサービスを選択するよう個人に助言することもありません。情報は、利用可能な最適なリソースに基づいて示されます。意見はその時点での判断によるものであり、変更される可能性があります。詳細については、Forrester社の客観性に関する<a href="https://www.forrester.com/about-us/objectivity/">こちらのページ</a>をご覧ください。</em></p>
]]></content>
        <author>
            <name>Dave Steer</name>
            <uri>https://about.gitlab.com/blog/authors/dave-steer</uri>
        </author>
        <published>2025-06-02T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[統合されたDevSecOpsプラットフォームへの移行を組織が進めている理由]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/why-are-organizations-moving-to-a-unified-devsecops-platform/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/why-are-organizations-moving-to-a-unified-devsecops-platform/"/>
        <updated>2025-06-02T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>今日の最新のソフトウェア開発を取り巻く環境では、多くの組織がクラウドに移行し、DevSecOpsプロセスの導入を進めています。しかしながら、このような移行プロセスには、最新の開発方法に合わせて設計されていないツールやレガシーシステムの増加という大きな課題が伴います。そのため、組織はタスク管理、CI/CD、セキュリティ、モニタリングなど、さまざまな用途のツール向けのインテグレーションを作成して、これらのシステムをDevSecOpsに適応させる必要があります。結果として、複雑な運用プロセス、高い保守コスト、開発チームと運用チーム間のコラボレーションへの悪影響といった新たな問題が生じます。さらに、デベロッパーは、計画から本番環境へのデプロイまでの1つの開発フローを完了するために、常に複数のツール間を切り替える必要があり、不満を抱えることになります。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097077/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097077287.jpg" alt="DevSecOpsプロセスに複数のツールを統合する難しさと、その際に生じる運用コスト"></p>
<p>&lt;center&gt;&lt;i&gt;DevSecOpsプロセスに複数のツールを統合するのがどれほど難しいか&lt;/i&gt;&lt;/center&gt;</p>
<p>&lt;br&gt;&lt;/br&gt;</p>
<p>幸いなことに、これには解決策があります。ソフトウェア開発に対する統一されたアプローチを提供する包括的なDevSecOpsプラットフォームです。</p>
<p>このようなプラットフォームは、クラウドベースおよびDevSecOps環境で運用を行う組織向けに構築されており、コード管理、CI/CDプロセス、タスク管理、セキュリティからAI主導の自動化まで、すべてのソフトウェア開発ステージを単一プラットフォームに統合します。すべてのソフトウェア開発ワークフローを統一されたインターフェイスに一元化できるため、開発チームと運用チームの作業やコミュニケーションが効率化され、運用面の複雑さや混乱を最小限に抑えられます。</p>
<p>さらに、デベロッパーエクスペリエンスも大幅に向上します。エンジニアは最新の開発ニーズに特化して設計された製品で作業することになるため、満足度が高まります。</p>
<p>以降のセクションでは、プロジェクトやタスクの管理、セキュリティやコンプライアンスの確保、AI搭載の開発ツールの導入など、チームがよく直面する課題を解決するためにGitLabがどのように役立つかをご紹介します。GitLabなら、単一の統合プラットフォーム内ですべてを行えます。</p>
<h2>統合されたアジャイルプロジェクト管理</h2>
<p>GitLabでは、CI/CDなどソフトウェア開発ライフサイクルの全ステージにわたって、プロジェクトとタスクの管理が完全に統合されている包括的なソリューションが提供されているため、リアルタイムで開発の進捗状況を追跡できます。イシューとエピックは自動化プロセスに直接紐づけられるため、計画から本番環境へのデプロイまでのシームレスなフローが実現されます。このアプローチにより、チーム間の透明性が高まり、遅延の発生が減り、すべてのステークホルダーがリアルタイムで開発状況を明確に把握できるようになります。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097077/Blog/Content%20Images/Blog/Content%20Images/image3_aHR0cHM6_1750097077288.jpg" alt="イシューとエピックは自動化プロセスに直接紐づけられるため、計画から本番環境へのデプロイまでのシームレスなフローが実現されます。"></p>
<h2>ビルトインのセキュリティ</h2>
<p>GitLabでは、包括的なセキュリティ機能を統合すること（セキュリティを最優先）を非常に重視しています。GitLabプラットフォームには、以下を含むさまざまな自動セキュリティスキャナーが組み込まれています。</p>
<ul>
<li><a href="https://docs.gitlab.com/user/application_security/dependency_scanning/">依存関係スキャン</a></li>
<li><a href="https://docs.gitlab.com/user/application_security/sast/">静的アプリケーションセキュリティテスト（SAST）</a></li>
<li><a href="https://docs.gitlab.com/user/application_security/dast/">動的アプリケーションセキュリティテスト（DAST）</a></li>
<li><a href="https://docs.gitlab.com/user/application_security/secret_detection/">シークレット検出</a></li>
<li><a href="https://docs.gitlab.com/user/application_security/container_scanning/">コンテナスキャン</a></li>
</ul>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097077/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750097077289.jpg" alt="さまざまな開発ステージでCI/CDプロセスに統合されているセキュリティスキャン機能"></p>
<p>&lt;center&gt;&lt;i&gt;さまざまな開発ステージでCI/CDプロセスに統合されているセキュリティスキャン機能&lt;/i&gt;&lt;/center&gt;</p>
<p>&lt;br&gt;&lt;/br&gt;</p>
<p>これらのセキュリティチェックは、CI/CDパイプラインを含むソフトウェア開発ライフサイクルの全ステージに直接組み込まれており、開発サイクルの早い段階で潜在的なセキュリティ上の問題についてデベロッパーに即座にフィードバックを提供します。</p>
<h2>コンプライアンスと規制要件</h2>
<p>効率性や優れたユーザーエクスペリエンスの確保に加え、多くの組織（特に金融機関や大企業など規制の厳しい業界の組織）は、厳格なセキュリティおよびコンプライアンス基準にプロセスが準拠していることを確認する必要があります。こういった組織では、特定のコードブランチ（mainブランチや保護ブランチなど）でCI/CDパイプラインが実行されるたびにセキュリティスキャナーが実行されるようにしたり、mainブランチにコードをマージする前に特定の承認を必須としたりするなど、さまざまなプロジェクトにポリシーを適用する機能が必要です。</p>
<p>GitLabでは、<a href="https://about.gitlab.com/blog/introducing-custom-compliance-frameworks-in-gitlab/">コンプライアンスフレームワーク</a>という機能があるため、このようなポリシーを簡単に適用できます。構造化されたポリシーを定義し、特定のプロジェクトに対して適用できる機能です。これにより、シームレスで効率的なデベロッパーワークフローを維持しつつ、規制やセキュリティ要件へのコンプライアンスを自動的に実現できます。</p>
<h2>AI搭載の開発支援</h2>
<p><a href="https://about.gitlab.com/ja-jp/gitlab-duo/">GitLab Duo</a>は、すべての開発ステージにわたってAI主導のアシスタンスを提供します。そのため、いちいち外部ツールに切り替える必要性がなくなります。すべてのリクエストは、プロジェクトとコードベース全体のコンテキストを把握したAI搭載機能によって処理されるため、より効率的かつスマートに作業を進められます。</p>
<p>例を挙げると、AIは以下のようなタスクを実行できます。</p>
<ul>
<li>タスクの説明の自動生成</li>
<li>イシューディスカッションのスマートな要約によるデベロッパーの貴重な時間の節約</li>
<li>高度なコードレビュー機能</li>
<li>コードの改善および最適化の提案</li>
<li>自動テスト生成</li>
<li>セキュリティの脆弱性の検出と修正</li>
<li>失敗したCIパイプラインの根本原因分析によるトラブルシューティング</li>
<li>プライバシーとデータセキュリティ</li>
</ul>
<p>公共機関や金融機関を始めとする規制の厳しい組織のニーズを理解しているGitLabは、セキュアな環境でAIモデルを実行できるよう独自のソリューションを提供しています。GitLab Duoセルフホストモデルを採用すると、各組織はデータプライバシー、セキュリティ、および大規模言語モデル（<a href="https://about.gitlab.com/blog/what-is-a-large-language-model-llm/">LLM</a>）の独自インフラへのデプロイを完全に制御しつつ、以下を実現できます。</p>
<ul>
<li>データプライバシーの保護</li>
<li>規制要件へのコンプライアンス</li>
<li>最高レベルのセキュリティ</li>
<li>外部ネットワークの利用やリスクなしでAIのメリットを活用</li>
</ul>
<h2>まとめ</h2>
<p>組織がプロセスの効率化、セキュリティの強化、イノベーションの加速を実現するためには、包括的なDevSecOpsプラットフォームが必要です。ビルトインのセキュリティ機能とAI搭載の自動化を備え、開発、セキュリティ、運用に不可欠なすべてのツールが統合された単一アプリケーションであるGitLabなら、まさにそれらを実現できます。</p>
<p>実際にGitLabがどのように動作するかをご覧になりたい方は、ぜひ以下のインタラクティブなデモをチェックしてみてください。</p>
<ul>
<li>
<p><a href="https://gitlab.navattic.com/gitlab-premium-with-duo">GitLab Duoが搭載されたGitLab PremiumとUltimate</a> – AI搭載の開発支援を体験しましょう</p>
</li>
<li>
<p><a href="https://gitlab.navattic.com/gitlab-scans">CI/CDパイプラインへのセキュリティ実装</a> – 統合されたセキュリティスキャンによってソフトウェアをどのように保護できるかをご覧ください</p>
</li>
<li>
<p><a href="https://gitlab.navattic.com/compliance">コンプライアンスフレームワーク</a> – GitLabを使用して全プロジェクトにポリシーを適用してガバナンスを向上させる方法をご紹介します</p>
</li>
</ul>
<blockquote>
<p>GitLab 18オンラインリリースイベントに参加して、自律型AIが担う役割など、DevSecOpsプラットフォームの未来について学びましょう。<a href="https://about.gitlab.com/ja-jp/eighteen/">今すぐご登録ください！</a></p>
</blockquote>
]]></content>
        <author>
            <name>Itzik Gan Baruch</name>
            <uri>https://about.gitlab.com/blog/authors/itzik-gan baruch</uri>
        </author>
        <published>2025-06-02T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab Duo Chatが自律型AIでさらに進化]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/gitlab-duo-chat-gets-agentic-ai-makeover/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-chat-gets-agentic-ai-makeover/"/>
        <updated>2025-05-29T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>生成AIのチャットアシスタントは、ソフトウェア開発の現場で一般的に使われるようになり、コードの作成や修正をサポートします。もしそのチャットアシスタントが、コードだけでなく開発プロセス全体のアーティファクトを理解できたとしたらどうでしょうか？コードを書く前にイシューやプロジェクトドキュメントの確認を手伝い、CI/CDパイプラインやマージリクエストにアクセスして、コーディング作業を適切に完了できるように支援してくれるとしたらどうでしょうか？</p>
<p><strong>こうした高度な開発支援を実現するのが、次世代のGitLab Duo Chat「GitLab Duo Agentic Chat」です。これは、AIネイティブな開発支援の大きな進化形であり、現在は<a href="https://docs.gitlab.com/policy/development_stages_support/#experiment">実験的なリリース</a>としてGitLabプラットフォームに新たに追加された機能です。</strong> GitLab Duo Agentic Chatは、VS CodeでGitLab Workflow拡張機能をお使いのGitLab.comユーザーであれば利用できます。</p>
<p>Agentic Chatは、従来の対話型AIによるチャット体験を、ユーザーに代わってアクションを実行するチャット体験に変革します。複雑な問題を細かいタスクに分割し、自律的に完了することができます。Agentic Chatは、提供されたコンテキストに基づいて質問に答えるだけでなく、以下のようなことができます。</p>
<ul>
<li>質問に答えるために必要な情報を<strong>自律的に判断する</strong></li>
<li>複数の情報源から必要な情報を取得するための<strong>一連の操作を実行する</strong></li>
<li>プロジェクト全体から得られる分析結果を組み合わせて、<strong>包括的な回答を作成する</strong></li>
<li>ソリューションを実装するために<strong>ファイルを作成、編集する</strong></li>
</ul>
<p>これらすべての作業が、人間のデベロッパーが常に状況を把握できる状態で行われます。</p>
<p>Agentic Chatは、<a href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-workflow-enterprise-visibility-and-control-for-agentic-ai/">現在プライベートベータ版</a>のDuo Workflowアーキテクチャ上に構築されています。このアーキテクチャは、与えられた質問に適したコンテキストを見つけたり、ファイルを編集したりするなど、特定のタスクを担うエージェントとツールで構成されています。</p>
<p><strong>GitLab Duo Agentic Chatのユースケース</strong></p>
<p>ここでは、Agentic Chatの実際の活用例と一般的なユースケースをご紹介します。</p>
<ul>
<li>
<p><strong>新しいプロジェクトにすばやくオンボーディング</strong>：新しいコードベースに慣れる作業をAIが支援することで、より迅速にプロジェクトに参加できます。</p>
</li>
<li>
<p><strong>担当業務にすぐに着手</strong>：イシューの説明が不明確でも、Agentic Chatが要件と既存の実装との関連性を示してくれるため、すぐに担当作業に取りかかることができます。</p>
</li>
<li>
<p><strong>変更の実装支援</strong>：変更作業が必要になった際には、Agentic Chatがプロジェクト全体にわたって複数のファイルを作成、編集し、実装を支援します。</p>
</li>
<li>
<p><strong>リリース時の検証</strong>：リリースの段階では、Agentic Chatがマージリクエストと元のイシューやタスクを照らし合わせて、ソリューションが本当に要件を満たしているかを検証する手助けをします。</p>
</li>
</ul>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099210/Blog/Content%20Images/Blog/Content%20Images/image4_aHR0cHM6_1750099210429.png" alt="agentic chat - 例"></p>
<p>&lt;center&gt;&lt;i&gt;コードの編集を行う Agentic Chat&lt;/i&gt;&lt;/center&gt;</p>
<h2>学習からリリースまで：4ステップの開発ワークフロー</h2>
<p>GitLabエンジニアリングチームの実際のシナリオを通じて、Agentic Chatが開発体験をどのように変革するかをご紹介します。あなたはチームの新メンバーとして、イシューを割り当てられましたが、コードベースについてはまだ何も知らないとします。 それでは、以下のデモ動画に従って体験してみましょう。</p>
<p>&lt;!-- blank line --&gt;
&lt;figure class=&quot;video_container&quot;&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/uG9-QLAJrrg?si=kaOhYylMIaWkIuG8j&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt; &lt;/iframe&gt;
&lt;/figure&gt;
&lt;!-- blank line --&gt;</p>
<p><strong>ステップ1：プロジェクトを理解する</strong></p>
<p>ファイルやドキュメントを自分で探し回る代わりに、Agentic Chatに以下のように質問してみましょう。</p>
<pre><code class="language-unset">このプロジェクトは初めてです。構造を読んで説明してもらえますか？
</code></pre>
<p>Agentic Chatは、以下の方法でプロジェクトの全体像をわかりやすく示してくれます。</p>
<ul>
<li>ディレクトリ構造の探索</li>
<li>READMEファイルやドキュメントの読み取り</li>
<li>主要なコンポーネントやアプリケーションの特定</li>
</ul>
<p><strong>ステップ2：担当タスクを理解する</strong></p>
<p>次に、あなたが担当するタスクの内容を把握する必要があります。以下のように質問してみましょう。</p>
<pre><code class="language-unset">イシュー1119を担当することになりました。このタスクの内容を説明してもらえますか？特に、リファクタリングが必要な箇所はどこですか？
</code></pre>
<p>Agentic Chatは、以下の方法でタスクの説明とリファクタリングの提案を行ってくれます。</p>
<ul>
<li>リモートのGitLabサーバーからイシューの詳細を取得し、分析</li>
<li>関連するプロジェクトファイルの調査</li>
<li>変更が必要な箇所の特定</li>
</ul>
<p><strong>ステップ3：ソリューションを実装する</strong></p>
<p>手動で作業する代わりに、以下のようにリクエストできます。</p>
<pre><code class="language-unset">その編集を行ってもらえますか？ステップ1、2、3から始めてください。
</code></pre>
<p>Agentic Chatは以下のアクションを実行します。</p>
<ul>
<li>必要に応じて新しいディレクトリやファイルを作成</li>
<li>複数の場所にまたがってコードを抽出、リファクタリング</li>
<li>変更されたすべてのファイル間で一貫性を維持</li>
<li>行ったすべての変更の要約を報告</li>
</ul>
<p><strong>ステップ4：作業の完了を確認する</strong></p>
<p>マージリクエストを作成したら、最後に作業の完了を確認します。</p>
<pre><code class="language-unset">このマージリクエストはイシュー1119を完全に解決していますか？
</code></pre>
<p>Agentic Chatは、マージリクエストと元のイシューの内容を分析し、すべての要件が満たされているかどうかを検証してくれます。</p>
<h2>フィードバックをお待ちしています</h2>
<p>GitLab Duo Agentic Chatは現在、VS Codeの実験的機能として、GitLab Duo ProおよびEnterpriseユーザーの皆様にご利用いただけます。前提要件や設定手順については、<a href="https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/">セットアップドキュメント</a>をご確認ください。</p>
<p>実験的な機能であるAgentic Chatにはいくつかの既知の制限があります。これには、複数のAPIコールによる応答時間の遅延、文脈理解による検索ではなくキーワードベースの検索の実行、新しいローカルフォルダやGitLab以外のプロジェクトに対するサポートの制限などが含まれます。現在GitLabは、これらの事項の改善に積極的に取り組んでいます。 <strong>皆さまからのフィードバックは、改善の優先順位を決め、Agentic Chatを一般公開へと導く上で非常に重要です。ぜひ、<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/542198">こちらのイシュー</a>で皆さまの体験を共有してください。</strong></p>
<h2>今後の取り組み</h2>
<p>GitLabは、Agentic Chatの改善と一般公開へ向けた開発を全力で進めています。主な取り組みとして、応答速度の改善のほか、現在のGitLab Duo Chatで利用可能な各種機能をAgentic Chatでも使えるようにする作業があります。これには、セルフホストモデルのGitLab Duoとの統合や、VS Codeに加えてJetBrainsやVisual Studioをサポートする機能拡張が含まれます。Duo Chatをこの新しいアーキテクチャに切り替えた後は、GitLab Webアプリケーション内のチャットにもAgentic Chatを導入する予定です。 また、GitLabアーティファクトの編集、カスタムモデルコンテキストプロトコル（MCP）サーバーからのコンテキストの取得、ターミナルで実行できるコマンドの提供など、多くの新機能の追加も予定しています。</p>
<blockquote>
<p>まだGitLabをご利用でなくても、自律型の開発支援を今すぐ体験していただけます。<a href="https://about.gitlab.com/ja-jp/free-trial/">GitLab UltimateとGitLab Duo Enterpriseの無料トライアル</a>で、Agentic Chatを今すぐお試しください。AIを活用した開発の未来を一緒に形作りましょう。VS Codeでのセットアップ手順は、<a href="https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/#use-agentic-chat-in-vs-code">こちら</a>からご確認いただけます。</p>
</blockquote>
<p><em><strong>免責事項：このブログには、今後の製品、機能、および機能性に関する情報が含まれています。本ブログ記事に含まれる情報は、情報提供のみを目的としている点にご留意ください。購入や計画の判断材料として使用することはお控えください。すべてのプロジェクトと同様に、このブログおよびリンク先のページに記載されている項目は、変更または遅延される場合があります。製品、機能、機能性の開発、リリース、およびタイミングに関する決定権は、GitLabに帰属します。</strong></em></p>
<h2>関連リンク</h2>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-workflow-enterprise-visibility-and-control-for-agentic-ai/">GitLab Duo Workflow：自律型AIに対するエンタープライズレベルの可視性と管理</a></li>
<li><a href="https://about.gitlab.com/ja-jp/topics/agentic-ai/">自律型AIとは？</a></li>
<li><a href="https://about.gitlab.com/blog/agentic-ai-guides-and-resources/">自律型AIに関するガイドとリソース</a>（英語）</li>
</ul>
]]></content>
        <author>
            <name>Torsten Linz</name>
            <uri>https://about.gitlab.com/blog/authors/torsten-linz</uri>
        </author>
        <published>2025-05-29T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[フリー版のGitLabでできる Integration Guide 〜どんどんつなげよう、GitLabの輪〜]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/gitlab-free-tier-integration-guide/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/gitlab-free-tier-integration-guide/"/>
        <updated>2025-05-28T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<h2>目次</h2>
<p><strong>1.はじめに</strong>&lt;br&gt;
<strong>2.はしがき</strong>&lt;br&gt;
<strong>3.Redmine</strong>&lt;br&gt;
本書で扱うRedmine&lt;br&gt;
Redmineのインストール&lt;br&gt;
セットアップ&lt;br&gt;
初期設定&lt;br&gt;
GitLabのマニュアルの確認&lt;br&gt;
GitLab側の設定&lt;br&gt;
実際に使用している様子&lt;br&gt;
GitLabのコミット時に「#2」を指定している様子&lt;br&gt;
本インテグレーションのポイント&lt;br&gt;
ご注意&lt;br&gt;</p>
<p><strong>4.Backlog</strong>&lt;br&gt;
本書で扱うBacklog&lt;br&gt;
Backlogの利用開始&lt;br&gt;	
ユーザ登録	&lt;br&gt;
初期設定&lt;br&gt;
GitLabのマニュアルの確認&lt;br&gt;
GitLab側の設定&lt;br&gt;
GitLabのイシュー機能を非表示	&lt;br&gt;
実際に使用している様子	&lt;br&gt;
GitLabのコミット時に「キー情報」を指定している様子	&lt;br&gt;
本インテグレーションのポイント&lt;br&gt;	
ご注意	&lt;br&gt;</p>
<p><strong>5.Jira</strong>&lt;br&gt;
本書で扱うJiraと2つのユースケース	&lt;br&gt;
Jiraの利用開始&lt;br&gt;	
ユーザ登録	&lt;br&gt;
初期設定	&lt;br&gt;
GitLabのマニュアルの確認	&lt;br&gt;
ユースケース1. Jira Issue Integration	&lt;br&gt;
GitLab側の設定	&lt;br&gt;
GitLabのイシュー機能を非表示	&lt;br&gt;
実際に使用している様子	&lt;br&gt;
GitLabのコミット時に「URL情報」を指定している様子	&lt;br&gt;
本インテグレーションJira Issueのポイント	&lt;br&gt;
ご注意	&lt;br&gt;
ユースケース2. Jira development panel Integration	&lt;br&gt;
Jira側の設定	&lt;br&gt;
実際に使用している様子	&lt;br&gt;</p>
<h2>1.はじめに</h2>
<p>本書は、GitLabのフリー版をお使いの皆様に、無料で実現できる他社製品とのインテグレーション方法について詳しく説明したものです。</p>
<p>ぜひ実際に手を動かして、セットアップしてみてください。<br>
いずれもプロジェクト単位なので、他のGitLab上のプロジェクトに影響を与えることはありません。</p>
<h2>2.はしがき</h2>
<ul>
<li>
<p>本書に登場する会社名および商品名は各社の商標または登録商標です。</p>
</li>
<li>
<p>なお、本書ではⓇ、TM マークを明記しておりません。</p>
</li>
<li>
<p>本書で前提としている各製品等のバージョンは以下となります。</p>
<p>GitLab.com および GitLab Community Edition/Enterprise Edition Free版 17.10</p>
</li>
</ul>
<h2>3.Redmine</h2>
<h3>本書で扱うRedmine</h3>
<p>Redmineとは、<a href="https://www.redmine.org/">https://www.redmine.org/</a> で提供されている、無料のプロジェクト管理ツールです。非常に人気が高いOSSプロダクトです。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%E3%83%95%E3%83%AA%E3%83%BC%E7%89%88%E3%81%AEGitLab%E3%81%A7%E3%81%A7%E3%81%8D%E3%82%8B6.png" alt="フリー版のGitLabでできる6"></p>
<p><em>引用元: https://www.redmine.org/</em></p>
<p>2025/04/01時点で、最新のものは、 <a href="https://www.redmine.org/projects/redmine/wiki/Download">6.0.4</a>となっています。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__26.png" alt="フリー版のGitLabでできる26">
<em>引用元: https://www.redmine.org/</em></p>
<h3>Redmineのインストール</h3>
<h4>セットアップ</h4>
<p>本書では、Dockerをつかってインストールします。</p>
<p>以下のファイルを作成： docker-compose.yml</p>
<pre><code>version: '3.1'

services:

  redmine:
    image: redmine
    restart: always
    ports:
      - 80:3000
    environment:
      REDMINE_DB_MYSQL: db
      REDMINE_DB_PASSWORD: example
      REDMINE_SECRET_KEY_BASE: supersecretkey

  db:
    image: mysql:8.0
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE: redmine

</code></pre>
<p>その後、以下のコマンドでインスタンスを起動します。</p>
<pre><code>sudo docker compose up \-d
</code></pre>
<h4>初期設定</h4>
<p>Redmine側でプロジェクトや、イシューを作成できるよう、トラッカー等の設定をおこないます。一通りセットアップを完了します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__37.png" alt="フリー版のGitLabでできる37">
<em>引用元: https://www.redmine.org/</em></p>
<p>仮に以下の内容で準備が完了したとします。</p>
<table>
<thead>
<tr>
<th style="text-align:left">項目</th>
<th style="text-align:left">設定値</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left">URL</td>
<td style="text-align:left"><a href="http://my-redmine.samurai-tanuki.com/">http://my-redmine.samurai-tanuki.com/</a></td>
</tr>
<tr>
<td style="text-align:left">作成したプロジェクト</td>
<td style="text-align:left">sample-project-1</td>
</tr>
</tbody>
</table>
<h3>GitLabのマニュアルの確認</h3>
<p>以下のURLで、GitLabとRedmineの設定方法についてのガイドが記載されています。</p>
<p><a href="https://docs.gitlab.com/user/project/integrations/redmine/">Redmine | GitLab Docs</a></p>
<h3>GitLab側の設定</h3>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__20.png" alt="フリー版のGitLabでできる20"></p>
<table>
<thead>
<tr>
<th style="text-align:left">項目</th>
<th style="text-align:left">設定値</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left">プロジェクトのURL</td>
<td style="text-align:left">http://my-redmine.samurai-tanuki.com/projects/sample-project-1</td>
</tr>
<tr>
<td style="text-align:left">イシューのURL</td>
<td style="text-align:left">http://my-redmine.samurai-tanuki.com/issues/:id</td>
</tr>
<tr>
<td style="text-align:left">新しいイシューのURL</td>
<td style="text-align:left">http://my-redmine.samurai-tanuki.com/projects/sample-project-1/issues/new</td>
</tr>
</tbody>
</table>
<p>（*上記では、「新しいイシューのURL」を指定していますが、本機能はもう動作しません。UI上は入力チェック機能が動作するため、なにか適当な文字列を指定すればよいです。プロジェクトのURL、イシューのURLを指定し、「テスト設定」を押下して動作を確認します）</p>
<p>上記の「プロジェクトのURL」は、GitLabのメニューの以下の部分に表示されます。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__15.png" alt="フリー版のGitLabでできる15"></p>
<h3>実際に使用している様子</h3>
<p>Redmine側で、以下のようにイシューを作成します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__11.png" alt="フリー版のGitLabでできる11"></p>
<p><em>引用元: https://www.redmine.org/</em></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__12.png" alt="フリー版のGitLabでできる12">
<em>引用元: https://www.redmine.org/</em></p>
<h3>GitLabのコミット時に「#2」を指定している様子</h3>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__16.png" alt="フリー版のGitLabでできる16"></p>
<p>コミットした後、以下のようにリンクが作成されます。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__34.png" alt="フリー版のGitLabでできる34"></p>
<p>上記で「Issue in Redmine」をクリックすると、以下の画面に遷移します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__12.png" alt="フリー版のGitLabでできる12">
<em>引用元: https://www.redmine.org/</em></p>
<h3>本インテグレーションのポイント</h3>
<p>GitLabとRedmineのインテグレーションを実現すると、以下のような内容が実現できます。</p>
<ol>
<li>Redmine側でイシューを作成</li>
<li>GitLab側でソースコード等へ修正を加え、コミット時に、Redmine側でのチケット番号を指定すると、URLとして保存される</li>
<li>GitLabの画面で、そのチケット番号部分が「URLリンク」になっているため、クリックすればすぐにそのRedmineのチケットURLへ飛ぶことができる</li>
</ol>
<p>ポイントとして、</p>
<ul>
<li>GitLab側から、Redmine側へ直接「書き込み」は行わない</li>
<li>あくまでもリンクをつなげることで、GitLab ⇔ Redmine間で手動で行き来する手間と(別のチケットを参照しないように)操作ミスを防ぐ</li>
</ul>
<p>の2点が価値ポイントとなります。</p>
<h3>ご注意</h3>
<p>本機能を有効にすると、GitLab側の「イシュー」機能が利用できなくなります。</p>
<h2>4.Backlog</h2>
<h3>本書で扱うBacklog</h3>
<p>Backlogとは、株式会社ヌーラボ社から提供されている、製品です。ここでは、GitLabとのインテグレーション方法について解説します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__31.png" alt="フリー版のGitLabでできる31">
<em>引用元: https://backlog.com/ja/</em></p>
<h3>Backlogの利用開始</h3>
<h4>ユーザ登録</h4>
<p>Backlogの契約がまだで、テスト的に利用したい場合は、Free版が提供されているようなので、それを利用するのものオススメです。</p>
<h3>初期設定</h3>
<p>Backlog側でプロジェクトの作成をおこないます。Backlogの場合、プロジェクトを作成すれば、すぐに使えるようになっています。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__44.png" alt="フリー版のGitLabでできる44"></p>
<p><em>引用元: https://backlog.com/ja/</em></p>
<table>
<thead>
<tr>
<th style="text-align:left">項目</th>
<th style="text-align:left">設定値</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left">URL</td>
<td style="text-align:left">https://tsukasano.backlog.com/</td>
</tr>
<tr>
<td style="text-align:left">作成したプロジェクト</td>
<td style="text-align:left">sample-project-1</td>
</tr>
</tbody>
</table>
<h3>GitLabのマニュアルの確認</h3>
<p>以下のURLで、GitLabとBacklogについては、汎用的な接続インターフェースで設定します。<br>
この設定をした場合、GitLabの既存の「イシュー」機能も「存続」します。そのため、特に併用の必要がない場合は、GitLab側の「イシュー」を非表示することをおすすめします。</p>
<p><a href="https://docs.gitlab.com/user/project/integrations/custom_issue_tracker/">Custom issue tracker | GitLab Docs</a></p>
<h3>GitLab側の設定</h3>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__35.png" alt="フリー版のGitLabでできる35"></p>
<table>
<thead>
<tr>
<th style="text-align:left">項目</th>
<th style="text-align:left">設定値</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left">プロジェクトのURL</td>
<td style="text-align:left">https://tsukasano.backlog.com/projects/PAFE1</td>
</tr>
<tr>
<td style="text-align:left">イシューのURL</td>
<td style="text-align:left">https://tsukasano.backlog.com/view/PAFE1-:id</td>
</tr>
<tr>
<td style="text-align:left">新しいイシューのURL</td>
<td style="text-align:left">https://tsukasano.backlog.com/add/PAFE1</td>
</tr>
</tbody>
</table>
<p>Backlogの場合、イシューのURLの部分に少し注意が必要です。上記では、プロジェクトIDは「PAGE1」ですが、イシューを参照したときのURLは、(イシュー番号が6の場合)「https://tsukasano.backlog.com/view/PAFE1-6」となります。そのため、分かりづらいですが、上記の「イシューのURL」のように、「:id」を含める部分については注意が必要です。不明であれば、一旦、Backlog側でイシューを開き、そのURLの構成を確認するとよいでしょう。</p>
<p>（* 上記では、「新しいイシューのURL」を指定していますが、本機能はもう動作しません。UI上は入力チェック機能が動作するため、なにか適当な文字列を指定すればよいです。プロジェクトのURL、イシューのURLを指定し、「テスト設定」を押下して動作を確認します）</p>
<p>上記の「プロジェクトのURL」は、GitLabのメニューの以下の部分に表示されます。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__50.png" alt="フリー版のGitLabでできる50"></p>
<h4>GitLabのイシュー機能を非表示</h4>
<p>Backlogをメインとして使う場合、GitLabの「設定」ー「一般」ー「可視性、プロジェクトの機能、権限」より、「イシュー」をOffにします。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__17.png" alt="フリー版のGitLabでできる17"></p>
<p>その後、[変更を保存]ボタンを押して、設定を反映します。<br>
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__8.png" alt="フリー版のGitLabでできる8">
そうすると、以下のようにメニューの表示が変わります。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__50.png" alt="フリー版のGitLabでできる50"></p>
<h3>実際に使用している様子</h3>
<p>Backlog側で、以下のようにイシューを作成します。
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__23.png" alt="フリー版のGitLabでできる23">
<em>引用元: https://backlog.com/ja/</em></p>
<p>この時、上の図の矢印アイコンをクリックすると、課題名とキーが含まれた「キー情報」がクリップボードにコピーされます。</p>
<h3>GitLabのコミット時に「キー情報」を指定している様子</h3>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/image47.png" alt="フリー版47"></p>
<p>コミットした後、以下のようにリンクが作成されます。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__10.png" alt="フリー版のGitLabでできる10"></p>
<p>上記で「Issue in Custom issue tracker」をクリックすると、以下の画面に遷移します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__45.png" alt="フリー版のGitLabでできる45">
<em>引用元: https://backlog.com/ja/</em></p>
<h3>本インテグレーションのポイント</h3>
<p>GitLabとBacklogのインテグレーションを実現すると、以下のような内容が実現できます。</p>
<ol>
<li>Backlog側でイシューを作成</li>
<li>GitLab側でソースコード等へ修正を加え、コミット時に、Backlog側でのチケット番号を指定すると、URLとして保存される(Backlog側のUIから、チケット情報をコピーするとよいでしょう)</li>
<li>GitLabの画面で、そのチケット番号部分が「URLリンク」になっているため、クリックすればすぐにそのBacklogのチケットURLへ飛ぶことができる</li>
</ol>
<p>ポイントとして、</p>
<ul>
<li>GitLab側から、Backlog側へ直接「書き込み」は行わない</li>
<li>あくまでもリンクをつなげることで、GitLab ⇔ Backlog間で手動で行き来する手間と(別のチケットを参照しないように)操作ミスを防ぐ</li>
</ul>
<p>の2点が価値ポイントとなります。</p>
<h3>ご注意</h3>
<p>本機能を有効にすると、GitLab側の「イシュー」機能は残りますので、特別な理由がない限り、GitLab側の「イシュー」機能は停止するとよいでしょう。</p>
<h2>5.Jira</h2>
<h3>本書で扱うJiraと2つのユースケース</h3>
<p>Jiraとは、アトラシアン社から提供されている、製品です。ここでは、GitLabとのインテグレーション方法について解説します。</p>
<p>ここで扱うユースケースは、2つあります。このJiraの場合だけ、少し特殊なのが面白いところです。<br>
「Jira Issue」と「Jira development panel」Integrationです。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__3.png" alt="フリー版のGitLabでできる3">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<h3>Jiraの利用開始</h3>
<h4>ユーザ登録</h4>
<p>Jiraの契約がまだで、テスト的に利用したい場合は、Free版が提供されているようなので、それを利用するのものオススメです。</p>
<h4>初期設定</h4>
<p>Jira側でプロジェクトの作成をおこないます。Jiraの場合、プロジェクトを作成すれば、すぐに使えるようになっています。
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__5.png" alt="フリー版のGitLabでできる5">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<table>
<thead>
<tr>
<th style="text-align:left">項目</th>
<th style="text-align:left">設定値</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left">URL</td>
<td style="text-align:left">https://gitlab-tsukasa.atlassian.net/jira/software/projects/KAN/boards/1</td>
</tr>
<tr>
<td style="text-align:left">作成したプロジェクト</td>
<td style="text-align:left">KAN</td>
</tr>
</tbody>
</table>
<h3>GitLabのマニュアルの確認</h3>
<p>以下のURLで、GitLabとJiraについては、専用のインターフェースで設定します。Jiraの場合は他のプロダクトと比較して、よりレベルの高いインテグレーションが可能になっています。</p>
<p><a href="https://docs.gitlab.com/integration/jira/">Jira | GitLab Docs</a></p>
<p>GitLabとJiraのインテグレーションは、以下の2箇所あります。</p>
<ul>
<li>Jira イシュー … チケット機能です</li>
<li>Jira デベロップメントパネル … GitLab内のブランチ情報などをJiraに連携します</li>
</ul>
<p>それぞれ、GitLabとどう関係するのかは、以下のURLをご参考ください。</p>
<p><a href="https://docs.gitlab.com/integration/jira/#feature-availability">Jira | GitLab Docs</a></p>
<p>例)<br>
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__52.png" alt="フリー版のGitLabでできる52"></p>
<p>(以下続く)</p>
<h3>ユースケース1. Jira Issue Integration</h3>
<p>以下のURLにアクセスして、Jira側でAPIトークンを取得します。<br>
<a href="https://id.atlassian.com/manage-profile/security/api-tokens">https://id.atlassian.com/manage-profile/security/api-tokens</a></p>
<p>その時のユーザは、Jiraの管理者である必要があります。このユーザをつかって、GitLab側でのコミット情報をJira側にも書き込みます。</p>
<h4>GitLab側の設定</h4>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__41.png" alt="フリー版のGitLabでできる41">
ここでは、Web URLをつかって、インテグレーションをおこないます。</p>
<table>
<thead>
<tr>
<th style="text-align:left">項目</th>
<th style="text-align:left">設定値</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left">Web URL</td>
<td style="text-align:left">https://gitlab-tsukasa.atlassian.net</td>
</tr>
</tbody>
</table>
<p>以下の部分はデフォルトでチェックされていますので、そのままにします。これにより、Jira側へコメントが自動書き込みされます。
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__51.png" alt="フリー版のGitLabでできる51"></p>
<p>GitLab Premium版以上を使うと、GitLabの「イシュー」画面から透過的にJiraのイシューを見ることができますが、本書はGitLabフリー版を前提としていますので、GitLabの「イシュー」機能を非表示にします。</p>
<h4>GitLabのイシュー機能を非表示</h4>
<p>Jiraをメインとして使う場合、GitLabの「設定」ー「一般」ー「可視性、プロジェクトの機能、権限」より、「イシュー」をOffにします。
<img src="//images.ctfassets.net/r9o86ar0p03f/6l71cPpTn2z3WSzLx3pIPj/0820ce5f3dc7862fde216d43f83d5824/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__17.png" alt="フリー版のGitLabでできる17"></p>
<p>その後、[変更を保存]ボタンを押して、設定を反映します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__8.png" alt="フリー版のGitLabでできる8"></p>
<p>そうすると、以下のようにメニューの表示が変わります。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__39.png" alt="フリー版のGitLabでできる39"></p>
<h4>実際に使用している様子</h4>
<p>Jira側で、以下のようにイシューを作成します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__43.png" alt="フリー版のGitLabでできる43"></p>
<p>この時、上の図のクリップアイコンをクリックすると、このチケットへのURLがクリップボードにコピーされます。</p>
<h4>GitLabのコミット時に「URL情報」を指定している様子</h4>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/image33.png" alt="フリー版33">
コミットした後、以下のようにリンクが作成されます。
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__27.png" alt="フリー版のGitLabでできる27"></p>
<p>一方、キー番号のみを記述すると以下にになります。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__40.png" alt="フリー版のGitLabでできる40"></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__1.png" alt="フリー版のGitLabでできる1">
上記で「Issue in Jira issue」をクリックすると、以下の画面に遷移します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__24.png" alt="フリー版のGitLabでできる24"></p>
<p>このように、コメントが記入されますので、URLよりも、キーを指定することをおすすめします。</p>
<h4>本インテグレーション（Jira Issue）のポイント</h4>
<p>GitLabとJira Issueのインテグレーションを実現すると、以下のような内容が実現できます。</p>
<ol>
<li>Jira側でイシューを作成</li>
<li>GitLab側でソースコード等へ修正を加え、コミット時に、Jira側でのチケット番号を指定すると、URLとして保存される</li>
<li>GitLabの画面で、そのチケット番号部分が「URLリンク」になっているため、クリックすればすぐにそのJiraのチケットURLへ飛ぶことができる</li>
<li>さらに、そのJiraのチケットに、コミット時のコメントが記載される</li>
</ol>
<p>ポイントとして、</p>
<ul>
<li>GitLab側から、Jira Issue側へ直接「書き込み」を行う</li>
<li>チケットへのURLを貼ると、「書き込み」は行われない</li>
<li>これにより、GitLab ⇔ Jira間で手動で行き来する手間と(別のチケットを参照しないように)操作ミスを防ぐ</li>
</ul>
<p>の3点が価値ポイントとなります。</p>
<h4>ご注意</h4>
<p><strong>GitLab Free版を使う場合</strong></p>
<p>本機能を有効にすると、GitLab側の「イシュー」機能は残りますので、特別な理由がない限り、GitLab側の「イシュー」機能は停止するとよいでしょう。</p>
<p><strong>ご参考</strong>
GitLab Premium以上をご利用するとGitLabの「イシュー」から、JiraのIssueが見えるようになります。</p>
<p><a href="https://docs.gitlab.com/integration/jira/configure/#view-jira-issues">Jira issues integration | GitLab Docs</a></p>
<p>また、GitLab Ultimateをご利用すると、GitLab側でセキュリティスキャンを行ったのち、脆弱性がみつかった際、その脆弱性をJira側へ新規のチケットとして起票する、という機能が利用可能です。</p>
<p><a href="https://docs.gitlab.com/integration/jira/configure/#create-a-jira-issue-for-a-vulnerability">Jira issues integration | GitLab Docs</a></p>
<h3>ユースケース2. Jira development panel Integration</h3>
<p>このユースケースを使用する際、Jira側でどの「Jira」を使っているのかが重要になります。Atlassian社が提供するクラウドサービスを使っている場合、「GitLab for Jira Cloud app」(GitLab製)を使います。一方、オンプレミス版の「Jira Data Center or Jira Server」を使っている場合は、「Jira DVCS connector」（Atlassian社製）を使います。</p>
<p>本書では、クラウドサービスのJiraを使っている、という前提で解説します。</p>
<h4>Jira側の設定</h4>
<p>Jiraの画面で、「アプリ」ー「その他のアプリを探す」をクリックします。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__14.png" alt="フリー版のGitLabでできる14">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>ここで、GitLab製のこの「GitLab for Jira Cloud」Appをインストールします。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__7.png" alt="フリー版のGitLabでできる7">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__2.png" alt="フリー版のGitLabでできる2"></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__48.png" alt="フリー版のGitLabでできる48">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>これで無事インストールが完了です。</p>
<p>完了すると、次のポップアップが表示されますので、「Get started」をクリックします。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__30.png" alt="フリー版のGitLabでできる30">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>すると、次の画面が表示されますので、GitLab.comを選択した状態で、認証を完了させます。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__18.png" alt="フリー版のGitLabでできる18">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__4.png" alt="フリー版のGitLabでできる4">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>次に、このAppを有効にするGitLab側のグループを選択する画面になります。ここで、任意のグループを選択します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__32.png" alt="フリー版のGitLabでできる32">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>ここで選択できるのは、プロジェクトではなく、グループです。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__49.png" alt="フリー版のGitLabでできる49">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>無事完了すると、次の画面になります。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__53.png" alt="フリー版のGitLabでできる53">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<h4>実際に使用している様子</h4>
<p>では、実際になにがどう見えるのか実践してみます。</p>
<p>Jira側で、なにか適当なイシューを作成するなり、見つけてみましょう。そのキーが「KAN-14」だとします。
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__25.png" alt="フリー版のGitLabでできる25">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>ここで、GitLab側でなにか適当に変更して、コミットする際のダイアログボックス画面で以下のように入力します。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__21.png" alt="フリー版のGitLabでできる21"></p>
<p>Jira側にもどって、該当チケットを見てみます。</p>
<p>赤矢印のところに、GitLab側のレポジトリ情報が連携されていることがわかります。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__19.png" alt="フリー版のGitLabでできる19">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>以下のように、コミット情報等も連携されていることがわかります。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__28.png" alt="フリー版のGitLabでできる28">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>また、「すべての開発情報を表示」をクリックすると、以下のような画面も表示されます。
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__29.png" alt="フリー版のGitLabでできる29">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>参考までに、この時点でこのAppをアンインストールすると、以下のように、開発情報は表示されなくなります。
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__42.png" alt="フリー版のGitLabでできる42">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>Jira側からブランチを作成することも可能です。<br>
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__22.png" alt="フリー版のGitLabでできる22">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>また、以下は他のチケットですが、一度コミット時にJiraとの紐づけを行っておくと、そのブランチに対してビルドしたり、デプロイしたりした履歴が、以下のようにJira側にも反映されます。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__36.png" alt="フリー版のGitLabでできる36">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687054/Blog/Content%20Images/%C3%A3__%C3%A3_%C2%AA%C3%A3__%C3%A7__%C3%A3__GitLab%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__%C3%A3__38.png" alt="フリー版のGitLabでできる38">
<em>引用元: https://www.atlassian.com/software/jira</em></p>
<p>このように、Jiraのチケットから、「最終的にいまどこまで進んだ？」みたいな内容まで確認できるようになります。</p>
]]></content>
        <author>
            <name>Tsukasa Komatsubara</name>
            <uri>https://about.gitlab.com/blog/authors/tsukasa-komatsubara</uri>
        </author>
        <published>2025-05-28T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab入門：CI/CD変数を使用する]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/getting-started-with-gitlab-working-with-ci-cd-variables/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/getting-started-with-gitlab-working-with-ci-cd-variables/"/>
        <updated>2025-05-27T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p><em>「GitLab入門」シリーズへようこそ。このシリーズでは新たにGitLabを使い始める方向けに、GitLab DevSecOpsプラットフォームに慣れ親しむために役立つ内容をお届けします。</em></p>
<p>以前の記事で、<a href="https://about.gitlab.com/blog/getting-started-with-gitlab-understanding-ci-cd/">GitLab CI/CD</a>について取り上げました。今回は<strong>CI/CD変数</strong>の世界をさらに深く掘り下げ、その力を最大限に引き出す方法について説明します。</p>
<h3>CI/CD変数とは</h3>
<p>CI/CD変数とは、GitLab環境内においてさまざまなレベル（プロジェクト、グループ、インスタンスなど）で定義できる動的なキーと値のペアのことです。<code>.gitlab-ci.yml</code>ファイルで使用できる値のプレースホルダーとして機能するため、パイプラインをカスタマイズしたり、機密情報を安全に保存したりできるほか、CI/CD設定を管理しやすくなります。</p>
<h3>CI/CD変数が重要な理由</h3>
<p>CI/CD変数の使用には、以下のような多くのメリットがあります。</p>
<ul>
<li><strong>柔軟性</strong> - 主要なCI/CDスクリプトに手を加えることなく、さまざまな環境、設定、またはデプロイ対象にパイプラインを簡単に適応させられます。</li>
<li><strong>セキュリティ</strong> - API キー、パスワード、トークンのような機密情報を安全に保存して、コード内で直接公開されることのないようにします。</li>
<li><strong>保守性</strong> - 変数の値を一元化することで、CI/CDの設定がきれいに整理された状態に保たれるため、更新や修正作業を簡単に行えます。</li>
<li><strong>再利用性</strong> - 一度定義した変数は複数のプロジェクトで再利用できるため、重複が減り、一貫性を保ちやすくなります。</li>
</ul>
<h3>CI/CD変数のスコープ：プロジェクト、グループ、インスタンス</h3>
<p>GitLabでは、次のようなさまざまなスコープでCI/CD変数を定義し、その可視性と有効範囲を制御できます。</p>
<ul>
<li>
<p><strong>プロジェクトレベルの変数</strong> - 単一のプロジェクト専用の変数で、次のようなプロジェクト固有の設定を保存するのに適しています。</p>
<ul>
<li>デプロイURL：ステージング環境や本番環境向けのURLをそれぞれ定義します。</li>
<li>データベース認証情報：テストやデプロイ用のデータベース接続情報を保存します。</li>
<li>機能フラグ：パイプラインのさまざまな段階で機能を有効または無効にします。</li>
<li>例：&quot;MyWebApp&quot;というプロジェクトがあり、本番環境へのデプロイURLを保存したいとします。その場合、プロジェクトレベルで<code>DPROD_DEPLOY_URL</code>という名前の変数を作成し、<code>https://mywebapp.com</code>という値を格納します。</li>
</ul>
</li>
<li>
<p><strong>グループレベルの変数</strong> - グループレベルの変数を作成すると、GitLabグループ内の全プロジェクトで共有されます。次のような複数のプロジェクトに共通する設定がある場合に便利です。</p>
<ul>
<li>共有サービスのAPIキー：グループ内の複数のプロジェクトで使用されるサービス（AWS、Google Cloud、Docker Hubなど）のAPIキーを保存します。</li>
<li>グローバル構成設定：グループ内の全プロジェクトに適用される共通の設定パラメータを定義します。</li>
<li>例：「Web Apps」というグループがあり、Docker Hub用にAPIキーを保存したいとします。その場合は、グループレベルで<code>DOCKER_HUB_API_KEY</code>という名前の変数を作成し、対応するAPIキーの値を格納します。</li>
</ul>
</li>
<li>
<p><strong>インスタンスレベルの変数</strong> - GitLabインスタンスの全プロジェクトで利用可能な変数です。通常は、次のような組織全体に適用するグローバル設定がある場合に使用します。</p>
<ul>
<li>デフォルトのRunner登録トークン：新規<a href="https://docs.gitlab.com/runner/">Runner</a>の登録時にデフォルトのトークンを提供します。</li>
<li>ライセンス情報：GitLabの機能やサードパーティツールのライセンスキー情報を保存します。</li>
<li>グローバル環境設定：全プロジェクトで利用可能な環境変数を定義します。</li>
<li>例：GitLabインスタンス上の全プロジェクトにおいて、デフォルトのDockerイメージを設定したいとします。その場合、インスタンスレベルで<code>DEFAULT_DOCKER_IMAGE</code>という名前の変数を作成し、<code>ubuntu:latest</code>という値を格納します。</li>
</ul>
</li>
</ul>
<h3>CI/CD変数を定義する</h3>
<p>CI/CD変数は以下の手順で定義できます。</p>
<ol>
<li>プロジェクト、グループ、またはインスタンスで、<strong>設定 &gt; CI/CD</strong>ボタンの順にクリックします。</li>
<li><strong>変数</strong>セクションに移動します。</li>
<li><strong>変数を追加</strong>をクリックします。</li>
<li><strong>キー</strong>（例：<code>API_KEY</code>）と<strong>値</strong>を入力します。</li>
<li>機密情報を扱う場合は、必要に応じて<strong>変数を保護</strong>ボックスをオンにします。オンにすると、保護ブランチまたは保護タグで実行されているパイプラインでのみ、変数が利用可能になります。</li>
<li>必要に応じて、<strong>変数をマスク</strong>ボタンをオンにすると、ジョブログで変数の値が非表示になります。これにより、誤って公開されるのを防げます。</li>
<li><strong>変数を保存</strong>をクリックします。</li>
</ol>
<h3>CI/CD変数を使用する</h3>
<p><code>.gitlab-ci.yml</code>ファイルでCI/CD変数を使用する方法は簡単です。変数名の前にプレフィックスとして<code>$</code>を付けるだけです。</p>
<pre><code class="language-yaml">deploy_job:
  script:
    - echo &quot;Deploying to production...&quot;
    - curl -H &quot;Authorization: Bearer $API_KEY&quot; https://api.example.com/deploy
</code></pre>
<h3>定義済みのCI/CD変数</h3>
<p>GitLabでは、パイプラインでご利用いただけるように、<a href="https://docs.gitlab.com/ci/variables/predefined_variables/">定義済みのCI/CD変数</a>を一式ご用意しています。これらの変数は、現在のパイプラインやジョブ、プロジェクトなどに関する情報を提供します。</p>
<p>その中でも、使用されることの多い定義済み変数をいくつかご紹介します。</p>
<ul>
<li><code>$CI_COMMIT_SHA</code>：現在のパイプラインのコミットSHA。</li>
<li><code>$CI_PROJECT_DIR</code>：プロジェクトの複製先のディレクトリ。</li>
<li><code>$CI_PIPELINE_ID</code>：現在のパイプラインのID。</li>
<li><code>$CI_ENVIRONMENT_NAME</code>：デプロイ先の環境名（該当する場合）。</li>
</ul>
<h3>ベストプラクティス</h3>
<ul>
<li>機密性の高い変数は安全に管理する：APIキーやパスワード、その他の機密情報を扱う場合は、保護およびマスクされた変数を使用しましょう。</li>
<li>値のハードコーディングは行わない：設定値を保存する際は変数を使用しましょう。そうすることで、パイプラインの柔軟性と保守性が高まります。</li>
<li>変数を整理する：変数をわかりやすい名前を付けて、関連する変数をまとめると、うまく整理できます。</li>
<li>適切なスコープを選ぶ：希望する変数の用途と可視性に基づいて、適切なスコープ（プロジェクト、グループ、またはインスタンス）を選びましょう。</li>
</ul>
<h3>変数の力を最大限に活用する</h3>
<p>CI/CD変数は、GitLabパイプラインをカスタマイズし、保護するための強力なツールです。変数を使いこなし、各スコープを理解することで、より柔軟で保守しやすく、効率的なワークフローを作成できます。</p>
<p>開発プロジェクトにおいて、GitLabの機能を活用していただくために必要な情報をお届けしました。ご紹介した情報がお役に立てば幸いです。</p>
<blockquote>
<p><a href="https://about.gitlab.com/ja-jp/free-trial/">Duo Enterpriseが搭載されたGitLab Ultimateの60日間無料トライアル</a>に今すぐ申し込んで、CI/CD変数を早速ご利用ください。</p>
</blockquote>
<h2>「GitLab入門」シリーズ</h2>
<p>「GitLab入門」シリーズのその他の記事もぜひご覧ください。</p>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/blog/getting-started-with-gitlab-how-to-manage-users/">ユーザーの管理方法</a></li>
<li><a href="https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab/">GitLabへのプロジェクトのインポート方法</a></li>
<li><a href="https://about.gitlab.com/blog/getting-started-with-gitlab-mastering-project-management/">プロジェクト管理を極める</a></li>
<li><a href="https://about.gitlab.com/blog/automating-agile-workflows-with-the-gitlab-triage-gem/">gitlab-triage gemを使ったアジャイルワークフローの自動化</a></li>
<li><a href="https://about.gitlab.com/blog/getting-started-with-gitlab-understanding-ci-cd/">CI/CDについて理解する</a></li>
</ul>
]]></content>
        <author>
            <name>GitLab Team</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab-team</uri>
        </author>
        <published>2025-05-27T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab 18.0 リリース]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/"/>
        <updated>2025-05-15T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>本ブログは、<a href="https://about.gitlab.com/releases/2025/05/15/gitlab-18-0-released/">GitLab 18.0 Release</a>の抄訳です。内容に相違がある場合は、原文が優先されます。</p>
<h2>GitLab 18.0をリリース：GitLab DuoがPremiumとUltimateで利用可能に</h2>
<p>このたび、GitLab 18.0のリリースを発表しました。このリリースでは、GitLab PremiumとGitLab UltimateにGitLab Duoが搭載され、GitLab Duoコードレビューによる自動レビュー、コンテキストをより考慮したコードレビュー、GitLab Duo Self-Hostedで利用可能なリポジトリX-Rayなど、さまざまな新機能が追加されました。</p>
<p>これらの機能は、今回のリリースに含まれる30件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。</p>
<p>GitLab 18.0には、GitLabコミュニティのユーザーから328件ものコントリビュートがありました。ありがとうございました！GitLabは<a href="https://about.gitlab.com/community/contribute/">誰もがコントリビュートできる</a>プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。</p>
<p>GitLab 18の新機能を活用することで、開発からリリースまでの全工程でAIの力を活用しつつ、開発者のスピードを落とさずにセキュリティを強化できます。これらがすべて、一つのプラットフォームで実現します。新機能については、<a href="https://about.gitlab.com/eighteen/">GitLab 18のオンラインリリースイベント「The next step in intelligent DevSecOps（知的進化する次世代のDevSecOps）」</a>で詳しくご紹介いたします。ご参加をお待ちしています。</p>
<p>来月のリリースで予定されている内容を先取りするには、<a href="https://about.gitlab.com/upcoming-releases/">今後のリリースページ</a>をご覧ください。</p>
<p><a href="http://twitter.com/share?text=GitLab+18.0%E3%81%AE%E3%83%AA%E3%83%AA%E3%83%BC%E3%82%B9%E3%81%A7%E3%81%AF%E3%80%81Premium%E3%81%8A%E3%82%88%E3%81%B3Ultimate%E5%90%91%E3%81%91%E3%81%AEGitLab+Duo%E3%81%8C%E8%BF%BD%E5%8A%A0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82&amp;url=https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/&amp;hashtags=">GitLab 18.0では、PremiumおよびUltimate向けのGitLab Duoが追加されました。 クリックしてSNSで共有しましょう！</a></p>
<h2>今月の<a href="https://contributors.gitlab.com/docs/notable-contributors">注目コントリビューター</a>は<a href="https://gitlab.com/karras">Michael Hofer</a>さんです</h2>
<p>&lt;img src=&quot;https://about.gitlab.com/images/notable-contributor-logo.svg&quot;&gt;</p>
<p>トップコントリビューターであり、コミュニティリーダーでもあるMichael Hoferさんは、GitLabのオープンソースミッションを推進しています。今年だけで<a href="https://contributors.gitlab.com/users/karras?fromDate=2025-01-01&amp;toDate=2025-05-12">50件以上のコントリビュート</a>を行い、その活動はOpenBaoに基づくGitLabのGeo機能やシークレットマネージャーの強化に大きく貢献しました。また、<a href="https://contributors.gitlab.com/hackathon?hackathonName=2025_04">4月のハッカソン</a>ではトップの成績を収め、他のコントリビューターを支援しながらコミュニティプロジェクトも率いています。</p>
<p>「GitLabには誰もがコントリビュートできる環境があるので、とても感謝しています！」とMichaelさんは言います。「素晴らしいチームで、一緒に取り組んでいてとても楽しいです。特に、OpenBaoやSLSAのようなオープンソースイニシアチブで協力する際は、みんな本当に頼りになります。」</p>
<p>Michaelさんは、ミッションクリティカルなオープンソースワークロードの計画、構築、運用に特化した国際的なITサービスプロバイダーである<a href="https://adfinis.com/en/">Adfinis社</a>のCTOを務めています。Michaelさんは、組織間での協力を促進し、オープンソースソリューションの普及に情熱を注いでいます。</p>
<p>最近、Adfinis社はGitLabの<a href="https://about.gitlab.com/community/co-create/">共同開発プログラム</a>に参加しました。このプログラムでは、組織がGitLabの製品チームおよびエンジニアリングチームと協力して、GitLabの構築に取り組んでいます。「共同開発プログラムを、すべての組織に強くお勧めしたいです」とMichaelさんは話します。「PodmanのルートレスビルドやGlimmerの構文ハイライトに加え、その他多くの素晴らしいコントリビュートを生み出しました。」</p>
<p>GitLabのエンジニアリングマネージャーであり、今回Michaelさんを推薦した<a href="https://gitlab.com/luciezhao">Lucie Zhao</a>は次のように話します。「GeoチームはMichaelさんとの共同作業に大きなやりがいと楽しみを感じています。Michaelさんは、ここ数件のマイルストーンでの素晴らしいコントリビュートにより、チーム内で最も知られたコミュニティコントリビューターとなりました。」</p>
<p>GitLabチームメンバーの<a href="https://gitlab.com/leetickett-gitlab">Lee Tickett</a>、<a href="https://gitlab.com/c_fons">Chloe Fons</a>、<a href="https://gitlab.com/cipherboy-gitlab">Alex Scheel</a>も、Michaelさんの推薦を支持しました。Alexは次のように述べています。「MichaelさんのOpenBaoでのリーダーシップにより、お客様向けのシークレット管理ソリューションを効果的に共同開発することができました。また、透明性も確保され、GitLabの価値観に沿って進められました。」</p>
<p>GitLabの共同開発に取り組んでくださっているMichaelさんとAdfinisチームのみなさま、ありがとうございます！
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;</p>
<h2>GitLab 18.0でリリースされた主な改善点</h2>
<h3>GitLab DuoがGitLab PremiumおよびGitLab Ultimateで利用可能に</h3>
<blockquote>
<p>SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise<br>
Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise</p>
</blockquote>
<p>このリリースから、GitLab PremiumとGitLab UltimateでGitLab Duoが利用可能になりました。両プランにAI機能が標準搭載されます。</p>
<p>GitLabのAIネイティブ機能には、IDE内のコード提案とチャット機能があります。開発チームは、これらの機能を使用して次の作業を効率化できます。</p>
<ul>
<li>コードを分析し、理解し、説明する</li>
<li>より迅速に安全なコードを記述する</li>
<li>コード品質を維持するためのテストを素早く生成する</li>
<li>パフォーマンス向上や特定のライブラリの利用に合わせてコードを簡単にリファクタリングする</li>
</ul>
<p><a href="https://docs.gitlab.com/user/gitlab_duo/#summary-of-gitlab-duo-features">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/538857">イシュー</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/Premium_Duo.png&quot;&gt;</p>
<h3>GitLab Duo Self-HostedでリポジトリX-Rayが利用可能に</h3>
<blockquote>
<p>SaaS: - &lt;br&gt;
Self-Managed: Premium、Ultimate、Duo Enterprise</p>
</blockquote>
<p>GitLab Duo Self-Hostedで、コード提案と併せてリポジトリX-Rayを使用できるようになりました。この機能は、GitLab Duo Self-Hostedではベータ版として提供され、GitLab Self-Managedインスタンスでは一般提供されています。</p>
<p><a href="https://docs.gitlab.com/user/project/repository/code_suggestions/repository_xray/">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/17756">エピック</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/17_11/eclipse-beta.png&quot;&gt;</p>
<h3>GitLab Duoコードレビューによる自動レビュー</h3>
<blockquote>
<p>SaaS: Premium、Ultimate、Duo Enterprise&lt;br&gt;
Self-Managed: Premium、Ultimate、Duo Enterprise</p>
</blockquote>
<p>Duoコードレビューは、コードレビューのプロセスで効果的なフィードバックを提供しますが、これまでは各マージリクエストごとに手動でレビューをリクエストする必要がありました。</p>
<p>今回、プロジェクトのマージリクエスト設定を変更することで、Duoコードレビューを自動的に実行できるようになりました。自動レビュー機能を有効にすると、以下の場合を除き、すべてのマージリクエストに対してDuoコードレビューが自動でレビューを行います。</p>
<ul>
<li>マージリクエストがドラフトとしてマークされている場合</li>
<li>マージリクエストに変更が含まれていない場合</li>
</ul>
<p>自動レビュー機能により、プロジェクト内のすべてのコードが確実にレビューされ、コードベース全体のコード品質が継続的に改善されます。</p>
<p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#automatic-reviews-from-gitlab-duo">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/506537">イシュー</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/create-auto-dcr.png&quot;&gt;</p>
<h3>コード提案にプロンプトキャッシュを導入</h3>
<blockquote>
<p>SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise<br>
Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise</p>
</blockquote>
<p>コード提案にプロンプトキャッシュ機能が追加されました。この機能により、キャッシュされたプロンプトや入力データの再処理が不要になるため、コード補完の待機時間が大幅に短縮されます。キャッシュデータは永続ストレージに保存されることはなく、必要に応じてGitLab Duoの設定でプロンプトキャッシュを無効にすることも可能です。</p>
<p><a href="https://docs.gitlab.com/user/project/repository/code_suggestions/#prompt-caching">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/17489">エピック</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/prompt-cache.png&quot;&gt;</p>
<h3>コンテキストをより考慮したコードレビュー</h3>
<blockquote>
<p>SaaS: Premium、Ultimate、Duo Enterprise&lt;br&gt;
Self-Managed: Premium、Ultimate、Duo Enterprise</p>
</blockquote>
<p>コードレビューがより広範なコンテキスト情報を活用できるようになり、分析結果の精度が向上しました。主な改善点は以下のとおりです。</p>
<ul>
<li>マージリクエストのタイトルと説明を含めることで、変更の目的をより正確に把握できるようになりました。</li>
<li>すべての差分を一度に分析することで、ファイル間の関連性を認識し、誤検出を削減します。</li>
<li>変更されたファイル全体の内容を読み込み、修正が既存のコードパターンにどのように適合するかを理解できるようになりました。</li>
</ul>
<p>これらの機能強化により、不正確な提案が減少し、より関連性が高く高品質なコードレビューが可能になりました。</p>
<p><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/466684">イシュー</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/510266">イシュー</a></p>
<p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/532653">イシュー</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/create-dcr-improved-context.png&quot;&gt;</p>
<h2>GitLab 18.0のリリースに含まれるその他の改善点</h2>
<h3>グループとプレースホルダーユーザーの削除</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLab 18.0では、トップレベルグループを削除すると、そのグループに関連付けられたプレースホルダーユーザーも同時に削除されるようになりました。プレースホルダーユーザーが他のプロジェクトに関連付けられている場合は、トップレベルグループからのみ削除され、他のプロジェクトには残ります。これにより、他のプロジェクトの履歴や属性を損なうことなく、不要なプレースホルダーユーザーを整理できるようになりました。</p>
<p><a href="https://docs.gitlab.com/user/project/import/#placeholder-user-deletion">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/473256">イシュー</a></p>
<h3>Slackアプリ用GitLabで複数のワークスペースに対応</h3>
<blockquote>
<p>SaaS: -&lt;br&gt;
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLab Self-ManagedおよびGitLab Dedicatedのお客様向けに、GitLab for Slackアプリで複数のワークスペースを利用できるようになりました。この機能により、複数のSlackワークスペースを持つ組織でも、すべてのワークスペースでGitLabとの連携をスムーズに維持できます。複数のワークスペースを有効にするには、GitLab for Slackアプリを<a href="https://api.slack.com/distribution#unlisted-distributed-apps">非公開配布アプリ</a>として設定してください。</p>
<p><a href="https://docs.gitlab.com/administration/settings/slack_app/#enable-support-for-multiple-workspaces">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/424190">イシュー</a></p>
<h3>GitLab Pagesテンプレートの改善</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLabでは、<a href="https://gitlab.com/pages">人気の高い静的サイトジェネレーター用のテンプレート</a>を提供しています。スコアリングフレームワークでテンプレートを精査し、最も人気のあるものだけを厳選しました。</p>
<p>GitLab Pagesで利用可能なテンプレートが改良されたことにより、ウェブサイト制作の工程がよりスムーズになりました。テンプレートを活用すれば、技術的な専門知識が限られていてもプロ並みのサイトを立ち上げることができます。改善されたテンプレートは最新のレスポンシブデザインに対応しており、カスタム開発作業の必要もありません。</p>
<p><a href="https://docs.gitlab.com/user/project/pages/getting_started/pages_new_project_template/#project-templates">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/13847">エピック</a></p>
<h3>ワークスペースの共有Kubernetesネームスペース</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>共有のKubernetesネームスペースにGitLabワークスペースを作成できるようになりました。これにより、ワークスペースごとに新しいネームスペースを作成する必要がなくなり、エージェントに上位のClusterRole権限を付与する必要もなくなります。この機能により、セキュリテイが厳しい環境または制約のある環境でもワークスペースをより容易に導入できるようになり、よりスムーズにスケールできるようになります。</p>
<p>共有のネームスペースを有効にするには、エージェント設定ファイルの<code>shared_namespace</code>フィールドを設定し、すべてのワークスペースで使用したいKubernetesネームスペースを指定してください。</p>
<p>この機能は、<a href="https://about.gitlab.com/community/co-create/">GitLabの共同開発プログラム</a>を通じて開発され、6人のコミュニティメンバーの協力によって実現しました。皆さまのコントリビュートに感謝します！</p>
<p><a href="https://docs.gitlab.com/user/workspace/settings/#shared_namespace">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/12327">エピック</a></p>
<p>&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/CXakdRuoGgU?si=indgAnCrTuIhUhcM&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; allowfullscreen&gt;&lt;/iframe&gt;</p>
<h3>GitLab Runner 18.0</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLab Runner 18.0もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。</p>
<p>新機能：</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/514297">GitLab Runnerビルドエラー分類に<code>ConfigurationError</code>と<code>ExitCodeInvalidConfiguration</code>を新たに追加</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/5527">Cloud Storageへのキャッシュアップロードに失敗した場合に、よりわかりやすいクラウドプロバイダーエラーメッセージを表示するよう改善</a></li>
</ul>
<p>バグ修正：</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38706">GitLab Runnerが、許可されていない場合でもキャッシュされたイメージを使用できてしまう</a></li>
</ul>
<p>すべての変更の一覧は、GitLab Runnerの<a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/18-0-stable/CHANGELOG.md">変更履歴</a>で確認できます。</p>
<p><a href="https://docs.gitlab.com/runner/">ドキュメント</a></p>
<h3>Kubernetes用ダッシュボードのポッド状態表示を改善</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate&lt;br&gt;
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>Kubernetes用のダッシュボードを使用すると、デプロイされたアプリケーションをモニタリングできます。これまで<code>CrashLoopBackOff</code>や<code>ImagePullBackOff</code>などのコンテナエラーがあるポッドは「保留中」または「実行中」というステータスで表示されていたため、<code>kubectl</code>を使用せずに問題のあるデプロイメントを特定するのが困難でした。</p>
<p>GitLab 18.0からは、UI上のエラー表示が<code>kubectl</code>出力と同様に、特定のコンテナのステータスを示すようになりました。これにより、GitLabインターフェイスだけで失敗したポッドをすばやく特定し、トラブルシューティングを行えるようになりました。</p>
<p><a href="https://docs.gitlab.com/ci/environments/kubernetes_dashboard/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/525081">イシュー</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/deploy-improve-pod-status-visualizations.png&quot;&gt;</p>
<h3>セキュリティスキャナーがMRパイプラインに対応</h3>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
<p><a href="https://docs.gitlab.com/ci/pipelines/merge_request_pipelines/">マージリクエスト（MR）パイプライン</a>で<a href="https://docs.gitlab.com/user/application_security/detect/">アプリケーションセキュリティテスト（AST）スキャナー</a>を実行できるようになりました。パイプラインへの影響を最小限に抑えるため、この機能はオプトインで制御可能です。</p>
<p>これまでは、スキャナーを有効にする際に使用する<a href="https://docs.gitlab.com/user/application_security/detect/roll_out_security_scanning/#template-editions">CI/CDテンプレートのエディション（StableかLatest）</a>によって、デフォルトの動作が異なっていました。</p>
<ul>
<li>Stableのテンプレートでは、スキャンジョブはブランチパイプラインでのみ実行され、MRパイプラインでは実行されませんでした。</li>
<li>Latestのテンプレートでは、MRが開いている場合はMRパイプラインでスキャンジョブが実行され、関連するMRがない場合はブランチパイプラインで実行されており、この動作を制御することはできませんでした。</li>
</ul>
<p>今回、新しいオプションとして<code>AST_ENABLE_MR_PIPELINESが追加され</code>、MRパイプラインでジョブを実行するかどうかを制御できるようになりました。StableテンプレートとLatestテンプレートのデフォルトの動作は変わりません。</p>
<p>具体例：</p>
<ul>
<li>Stableテンプレートでは引き続き、デフォルトでブランチパイプラインでスキャンジョブを実行しますが、<code>AST_ENABLE_MR_PIPELINES: &quot;true&quot;</code>を設定すると、MRが開いている場合にMRパイプラインを使用できます。</li>
<li>Latestテンプレートでは引き続き、MRが開いている場合はデフォルトでMRパイプラインでスキャンジョブを実行しますが、<code>AST_ENABLE_MR_PIPELINES: &quot;false&quot;</code>を設定すると、代わりにブランチパイプラインを使用できます。</li>
</ul>
<p>今回の改善は、API Discovery（<code>API-Discovery.gitlab-ci.yml</code>）を除くすべてのセキュリティスキャンテンプレートに適用されます。API Discoveryは現在、MRパイプラインがデフォルトですが、GitLab 18.0では他のStableテンプレートと同様に、デフォルトでブランチパイプラインを使用するように変更されました。</p>
<p><a href="https://docs.gitlab.com/user/application_security/detect/roll_out_security_scanning/#use-security-scanning-tools-with-merge-request-pipelines">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/410880">イシュー</a></p>
<h3>JiraインテグレーションAPIを使用して脆弱性からJiraのイシューを作成する設定が可能に</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>これまでは、<a href="https://docs.gitlab.com/integration/jira/configure/#create-a-jira-issue-for-a-vulnerability">脆弱性からJiraのイシューを作成</a>する設定は、プロジェクト設定ページからしか行えませんでした。</p>
<p>今回の更新により、プロジェクト統合APIからも設定できるようになり、セットアップの自動化が可能になりました。</p>
<p><a href="https://docs.gitlab.com/api/project_integrations/#jira-issues">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/454574">イシュー</a></p>
<h3>再検出された脆弱性のトレーサビリティの向上</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>これまで、解決済みの脆弱性が再検出されてステータスが変更された場合、脆弱性の詳細にはいつ、なぜステータスが変更されたかを示す情報が含まれていませんでした。</p>
<p>解決済みの脆弱性が新しいスキャンで再び検出されてステータスが変更された場合、GitLabはその脆弱性の履歴にシステムメモを自動的に追加するようになりました。これにより、ユーザーは脆弱性のステータスが変更された経緯を明確に把握できるようになります。</p>
<p><a href="https://docs.gitlab.com/user/application_security/vulnerabilities/#vulnerability-status-values">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/523452">イシュー</a></p>
<h3>コンプライアンスプロジェクトレポートでアーカイブされたプロジェクトの表示とフィルタリングが可能に</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>コンプライアンスプロジェクトレポートでは、グループまたはサブグループ内の各プロジェクトに適用されているコンプライアンスフレームワークを確認することができます。</p>
<p>ただし、これまでのレポートでは、プロジェクトがアーカイブされているかどうかを表示する機能がなく、アクティブなプロジェクトとアーカイブ済みプロジェクトの両方のコンプライアンス管理に必要な情報が十分ではありませんでした。</p>
<p>そこで今回、プロジェクトがアーカイブされているかどうかを示すインジケータが追加されました。これにより、コンプライアンスフレームワークを確認する際に、プロジェクトがアクティブかアーカイブ済みかを問わず、コンプライアンス状況をより明確に把握できるようになりました。</p>
<p>この機能には以下が含まれます。</p>
<ul>
<li>コンプライアンスプロジェクトレポートの各プロジェクトに、アーカイブ済みかどうかを示すステータスバッジを表示</li>
<li>アーカイブ済み、アーカイブされていない、すべてのプロジェクトを切り替えるフィルター</li>
</ul>
<p><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_projects_report/#filter-the-compliance-projects-report">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/500520">イシュー</a></p>
<h3>GitLabユーザー名を使用したLDAP認証</h3>
<blockquote>
<p>SaaS: -&lt;br&gt;
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>LDAPユーザーは、GitLabユーザー名を使用してリクエストを認証できるようになりました。これまでは、GitLabユーザー名がLDAPユーザー名と一致しない場合、GitLabは認証エラーを返していました。今回の変更により、承認ワークフローに影響を与えることなく、GitLabシステムとLDAPシステムで異なるユーザー名の命名規則を採用できるようになりました。</p>
<p><a href="https://docs.gitlab.com/administration/auth/ldap/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/215357">イシュー</a></p>
<h3>カスタムロールの新しい権限</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/471385">保護環境を管理</a>する権限をカスタムロールに設定できるようになりました。カスタムロールを使用すれば、ユーザーに対して、タスクの完了に必要な特定の権限のみを付与できます。これによりグループのニーズに合わせてロールを定義できるため、オーナーまたはメンテナーロールが必要なユーザー数を減らすことができます。</p>
<p><a href="https://docs.gitlab.com/user/custom_roles/">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/14746">エピック</a></p>
<h3>ユーザーネームスペースのプロジェクトにも削除保留機能を追加</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>ユーザーネームスペース（個人プロジェクト）のプロジェクトでも、プロジェクト削除保留機能が利用できるようになりました。誤削除からデータを守るこの安全機能は、これまではグループプロジェクトでしか利用できませんでした。今回の更新により、ユーザーネームスペースでプロジェクトを削除しても、すぐに完全に削除されるのではなく、インスタンスの設定期間（GitLab.comでは7日間）は「削除保留中」の状態になります。これにより、期間内であれば、必要に応じてプロジェクトを元に戻すことが可能になりました。</p>
<p>ユーザーの皆さまがより安心して個人プロジェクトを管理できるよう設計された保護機能です。</p>
<p><a href="https://docs.gitlab.com/user/project/working_with_projects/#delayed-project-deletion">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/536244">イシュー</a></p>
<h3>破壊的な変更を伴うGitLabチャート9.0のリリース</h3>
<blockquote>
<p>SaaS: -&lt;br&gt;
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#postgresql-14-and-15-no-longer-supported">破壊的な変更</a>：PostgreSQL 14と15のサポートが削除されました。GitLabチャート9.0にアップグレードする前に、PostgreSQL 16にアップグレードされていることを確認してください。</li>
<li><a href="https://docs.gitlab.com/update/deprecations/#major-update-of-the-prometheus-subchart">破壊的な変更</a>：バンドルのPrometheusチャートが15.3から27.11に更新されました。Prometheusチャートのアップグレードに伴い、Prometheusバージョンも2.38から3.0に更新されました。このアップグレードを実行するには、手動での設定が必要です。Alertmanager、Node Exporter、Pushgatewayのいずれかが有効になっている場合は、Helm値も更新する必要があります。詳細については、<a href="https://docs.gitlab.com/charts/releases/9_0/#prometheus-upgrade">移行ガイド</a>を参照してください。</li>
<li><a href="https://docs.gitlab.com/update/deprecations/#fallback-support-for-gitlab-nginx-chart-controller-image-v131">破壊的な変更</a>：デフォルトのNGINXコントローラーイメージがバージョン1.3.1から1.11.2に更新されました。GitLab NGINXチャートを使用し、独自のNGINX用RBACルールを設定している場合は、新しいRBACルールが必要となります。詳細については、<a href="https://docs.gitlab.com/charts/releases/8_0/#upgrade-to-86x-851-843-836">アップグレードガイド</a>を参照してください。</li>
</ul>
<p><a href="https://docs.gitlab.com/charts/releases/9_0/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/charts/gitlab/-/issues/5927">イシュー</a></p>
<h3>GitLab Dedicated向けに内部リリース機能を提供開始</h3>
<blockquote>
<p>SaaS: -&lt;br&gt;
Self-Managed: Ultimate</p>
</blockquote>
<p>GitLab Dedicatedを選択される組織の多くは、厳格なセキュリティ要件やコンプライアンス義務を満たすために、開発環境における最高レベルの保護を必要としています。このたび、「内部リリース」という新しいプライベートリリース機能の提供を開始しました。致命的な脆弱性が一般に公開される前にGitLab Dedicatedインスタンスに修正を適用できるようになり、GitLab Dedicatedのお客様をリスクから保護します。この新機能は、GitLab.comでの対応と並行し、GitLabで発見された致命的な脆弱性に対して即時の保護を提供するものです。この新しいプロセスは、お客様側での操作は必要ありません。</p>
<p><a href="https://handbook.gitlab.com/handbook/engineering/releases/internal-releases/">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-com/gl-infra/-/epics/1201">エピック</a></p>
<h3>グループとプロジェクトのREST APIに新しい<code>アクティブ</code>パラメータを追加</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>グループとプロジェクトのREST APIに新しい<code>アクティブ</code>パラメータが追加されました。これにより、ステータスに基づいたグループのフィルタリングが簡素化されます。<code>true</code>に設定すると、アーカイブされていないグループ、または削除マークが付いていないプロジェクトのみが返されます。<code>false</code>に設定すると、アーカイブされたグループ、または削除マークが付いているプロジェクトのみが返されます。パラメータを指定しない場合、フィルタリングは適用されません。この機能強化により、簡単なAPIコールで特定のステータスを持つグループやプロジェクトだけを選び出せるようになり、作業プロセス全体をより効率的に管理できるようになります。</p>
<p>このパラメータをプロジェクトAPIに追加してくれた<a href="https://gitlab.com/dagaranupam">@dagaranupam</a>さんに感謝します！</p>
<p><a href="https://docs.gitlab.com/api/projects/#list-projects">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/526206">イシュー</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/526205">イシュー</a></p>
<h3>GitLab.comでのコントリビュートの再アサイン時にEnterpriseユーザーのみを表示</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>今回のリリースでは、プレースホルダーユーザーマッピング体験を向上させました。具体的には、ユーザー選択ドロップダウンの表示範囲を、トップレベルグループに関連付けられた<a href="https://docs.gitlab.com/user/enterprise_user/">Enterpriseユーザー</a>に絞り込むように改善しました。これまで、GitLab.comへのインポート後にユーザーのコントリビュートを再アサインすると、プラットフォーム上のすべてのアクティブユーザーがドロップダウンリストに表示されていました。この仕様では、特にSCIMプロビジョニングでユーザー名が変更されている場合などは、正しいユーザーを特定するのが困難でした。今回の変更により、トップレベルグループでEnterpriseユーザー機能が有効になっている場合、ドロップダウンリストには組織が要求したユーザーのみが表示されるようになり、ユーザーの再アサイン時に発生するエラーの可能性が大幅に低減されます。同様の絞り込みがCSVベースの再アサインにも適用されるため、組織外のユーザーへの誤ったアサインを防ぐことができます。</p>
<p><a href="https://docs.gitlab.com/user/group/import/direct_transfer_migrations/#user-contribution-and-membership-mapping">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/510673">イシュー</a></p>
<h3>GitLabクエリ言語ビューの機能強化</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLabクエリ言語（GLQL）ビューが大幅に改善されました。新しく追加された機能は以下のとおりです。</p>
<ul>
<li>すべての日付型で<code>&gt;=</code>および<code>&lt;=</code>の条件指定が可能に</li>
<li>ビューの「ビューアクション」ドロップダウンが追加</li>
<li>「<strong>再読み込み</strong>」アクションが利用可能に</li>
<li>フィールドエイリアス対応</li>
<li>GLQLテーブルの列でカスタム名にエイリアス設定が可能に</li>
</ul>
<p>この機能強化およびGLQLビュー全般に関するフィードバックは、<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/509791">イシュー509791</a>からお寄せください。</p>
<p><a href="https://docs.gitlab.com/user/glql/">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/15008">エピック</a></p>
<h3>マージリクエストからワークスペースを作成</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>新しい「<strong>ワークスペースで開く</strong>」オプションを使用して、マージリクエストから直接ワークスペースを作成できるようになりました。この機能は、マージリクエストのブランチとコンテキストを使用してワークスペースを自動的に構成し、以下のことを可能にするものです。</p>
<ul>
<li>完全に設定された環境でコード変更をレビュー</li>
<li>マージリクエストブランチでテストを実行し、機能を検証</li>
<li>ローカル環境の設定なしでマージリクエストに修正を追加</li>
</ul>
<p><a href="https://docs.gitlab.com/user/workspace/configuration/#create-a-workspace">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/426568">イシュー</a></p>
<h3>ファイルをターゲットとするオープンマージリクエストの表示</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate&lt;br&gt;
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>これまでは、コードファイルを編集する際に、他のブランチで同じファイルを変更している可能性のあるユーザーの動向を把握することはできませんでした。このため、マージの競合や作業の重複、非効率的なコラボレーションが生じていました。</p>
<p>今回の変更により、リポジトリで表示しているファイルを変更しているすべてのオープンマージリクエストを簡単に特定できるようになりました。この機能は次のような場面で役立ちます。</p>
<ul>
<li>マージコンフリクトを事前に特定する</li>
<li>すでに進行中の作業の重複を回避する</li>
<li>進行中の変更を可視化してコラボレーションを強化する</li>
</ul>
<p>ファイルを変更しているオープンマージリクエストの数がバッジに表示され、その上にカーソルを合わせると、該当するマージリクエストのリストがポップオーバーで表示されます。</p>
<p><a href="https://docs.gitlab.com/user/project/repository/files/#view-open-merge-requests-for-a-file">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/448868">イシュー</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/mr-open-workspace.png&quot;&gt;</p>
<h3>新しい「CI/CDの分析」表示機能の限定提供を開始</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>「CI/CDの分析」のデザインが改良され、開発チームがパイプラインのパフォーマンスと信頼性を新しい方法で分析、監視、最適化できるようになりました。デベロッパーは、GitLabの操作画面に表示される直感的なグラフによってパフォーマンスの傾向や信頼性に関するメトリクスを確認できます。これらの分析情報をプロジェクトリポジトリに埋め込むことで、デベロッパーの作業の流れを中断させる頭の切り替えが不要になります。そして、チームは、生産性を低下させるパイプラインのボトルネックを特定して対処することができます。この機能強化により、開発サイクルの高速化、コラボレーションの向上が実現されるだけでなく、具体的な分析結果に基づき、GitLabのCI/CD環境を最適化するための信頼できる材料を得ることができます。</p>
<p><a href="https://docs.gitlab.com/user/analytics/ci_cd_analytics/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/444468">イシュー</a></p>
<p>&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/78Nxbem9OAk?si=KTKVK7EsiW9E4Zxm&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; allowfullscreen&gt;&lt;/iframe&gt;</p>
<h3>イベントデータ収集</h3>
<blockquote>
<p>SaaS: -&lt;br&gt;
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>GitLab 18.0では、GitLab Self-ManagedおよびGitLab Dedicatedインスタンスからイベントレベルの製品使用状況データの収集が有効にされます。集計データとは異なり、イベントレベルのデータは製品利用の実態をより正確に把握するための情報源となります。これにより、プラットフォーム上のユーザーエクスペリエンスを向上させ、機能の利用率を高めることができます。データ共有設定を調整する方法の詳細については、ドキュメントを参照してください。</p>
<p><a href="https://docs.gitlab.com/administration/settings/event_data/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/510333">イシュー</a></p>
<h3>脆弱性レポートからイシューへ脆弱性を一括追加</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>今回リリースでは、脆弱性レポートから新規または既存のGitLabイシューに複数の脆弱性を一括追加できるようになりました。これにより、複数のイシューと脆弱性を関連付けることが可能になります。さらに、関連する脆弱性がイシューページに表示されるようになりました。</p>
<p><a href="https://docs.gitlab.com/user/application_security/vulnerability_report/#add-vulnerabilities-to-an-existing-issue">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/13216">エピック</a></p>
<h3>ライセンス承認ルールからパッケージを除外</h3>
<blockquote>
<p>SaaS: Ultimate<br>
Self-Managed: Ultimate</p>
</blockquote>
<p>マージリクエスト承認ポリシーに追加されたライセンス承認ポリシーの新機能により、法務チームやコンプライアンスチームは、特定のライセンスを使用できるパッケージをより細かく制御できるようになりました。これにより、組織のポリシーによって通常ブロックされるライセンスを使用している場合でも、事前に承認されたパッケージの例外を作成できるようになります。</p>
<p>これまでのライセンス承認ポリシーでは、AGPL-3.0などのライセンスをブロックした場合、組織内のすべてのパッケージでそのライセンスがブロックされていました。これにより、次のような場面で問題が発生していました。</p>
<ul>
<li>法務チームが、通常は制限されているライセンスであっても特定のパッケージを事前に承認している場合</li>
<li>数百件ものプロジェクトで同じパッケージを使用する必要がある場合</li>
<li>チームごとに異なるライセンスの例外が必要な場合</li>
</ul>
<p>今回のリリースでは、厳格なライセンスガバナンスを維持しつつ必要な例外を許可できるようになり、承認のボトルネックや手作業でのレビューを大幅に削減できます。たとえば、以下のような設定が可能です。</p>
<ul>
<li>パッケージURL（PURL）形式を使用して、ライセンス承認ルールにパッケージ固有の例外を定義</li>
<li>通常は制限されているライセンスでも、特定のパッケージ（またはパッケージのバージョン）に限って使用を許可</li>
<li>特定のパッケージ（またはパッケージのバージョン）に対し、一般的に許可されているライセンスの使用をブロック</li>
</ul>
<p>例外を追加するには、ライセンス承認ポリシーの作成または編集時に次のワークフローに従ってください。</p>
<ol>
<li>
<p>グループで<strong>セキュリティ</strong> &gt; <strong>ポリシー</strong>に移動します。</p>
</li>
<li>
<p>ライセンス承認ポリシーを作成または編集します。</p>
</li>
<li>
<p>ビジュアルエディタで新しいパッケージ例外オプションを見つけるか、YAMLモードで構成します。</p>
</li>
<li>
<p>ライセンスに対して、許可リストまたは拒否リストを選択します。</p>
</li>
<li>
<p>ポリシーに特定のライセンスを追加します。</p>
</li>
<li>
<p>ライセンスごとにPURL形式でパッケージ例外を定義します。</p>
</li>
</ol>
<p>例：<code>pkg:npm/@angular/animation@12.3.1</code></p>
<ol start="7">
<li>ライセンスルールにこれらのパッケージを含めるか除外するかを指定します。</li>
</ol>
<p>これらの設定後は、ポリシーが定義された例外を適切に処理しながらライセンスルールを適用するため、組織全体でライセンスコンプライアンスをきめ細かく制御できるようになります。</p>
<p><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#license_finding-rule-type">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/10203">エピック</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/license-exceptions-mr-approval-policy.png&quot;&gt;</p>
<h3>ユーザー招待機能の無効化</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>グループやプロジェクトにメンバーを招待する機能を制限できるようになりました。</p>
<ul>
<li>GitLab.comでは、Enterpriseユーザーを持つグループのオーナーがこの制限を設定でき、設定はトップレベルグループ内のサブグループやプロジェクトに適用されます。この招待制限が設定されると、どのユーザーも新しいメンバーを招待することはできません。</li>
<li>GitLab Self-Managedの場合、この制限設定は管理者によって行われ、インスタンス全体に適用されます。その後も、管理者は引き続きユーザーを直接招待できます。</li>
</ul>
<p>この機能は、組織がメンバーシップアクセスを厳格に管理したい場合に便利です。</p>
<p><a href="https://docs.gitlab.com/administration/settings/visibility_and_access_controls/#disable-user-invitations">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/19618">イシュー</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/disable_invitations.png&quot;&gt;</p>
<h3>ジョブトークンのきめ細かい権限管理がベータ版として登場</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>パイプラインセキュリティがさらに柔軟になりました。ジョブトークンはパイプライン内でリソースにアクセスするための一時的な認証情報です。トークンはこれまで、ユーザーから完全な権限を継承していたため、不必要に広範なアクセスが付与される事態が数多く発生していました。</p>
<p>新しく追加された<a href="https://docs.gitlab.com/ci/jobs/fine_grained_permissions/">ジョブトークンのきめ細かい権限</a>ベータ機能により、プロジェクト内でジョブトークンがアクセスできる特定のリソースを正確に制御できるようになりました。これにより、CI/CDワークフローで最小権限の原則を実装し、各ジョブに対してタスクの実行に必要な最小アクセス権のみを設定できるようになります。</p>
<p>この機能について、コミュニティからのフィードバックをぜひお寄せください。ご質問や実装経験の共有、改善点に関して当社チームへのご意見がある場合は、<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/519575">フィードバックイシュー</a>をご確認ください。</p>
<p><a href="https://docs.gitlab.com/ci/jobs/fine_grained_permissions/">ドキュメント</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/16199">エピック</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/sscs-authz-fine-grained-job-tokens.png&quot;&gt;</p>
<h3>ユーザーセッション最大長の制限</h3>
<blockquote>
<p>SaaS: -&lt;br&gt;
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>管理者は、ユーザーセッションの最大有効期間を「最初のサインイン」から計算するか、または「最後のアクティビティー」から計算するかを選択できるになりました。ユーザーにはセッションが終了することが通知されますが、セッションの有効期限を変更したり、セッションを延長したりすることはできません。この機能はデフォルトで無効になっています。</p>
<p>この場を借りて、コントリビュートしてくれた<a href="https://gitlab.kitware.com/john.parent">John Parent</a>さんに感謝します！</p>
<p><a href="https://docs.gitlab.com/administration/settings/account_and_limit_settings/#set-sessions-to-expire-from-creation-date">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/395038">イシュー</a></p>
<h3>SAML証明書のSHA256サポート</h3>
<blockquote>
<p>SaaS: Premium、Ultimate<br>
Self-Managed: Premium、Ultimate</p>
</blockquote>
<p>GitLabは、グループSAML認証におけるSHA1およびSHA256の証明書フィンガープリントを自動的に検出し、サポートするようになりました。これにより、既存のSHA1フィンガープリントとの下位互換性が維持されるほか、より安全なSHA256フィンガープリントのサポートが追加されます。今回のアップグレードは、SHA256をデフォルト設定とする次世代ruby-saml 2.xに対応するための必須の対応となります。</p>
<p><a href="https://docs.gitlab.com/integration/saml/">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/524624">イシュー</a></p>
<h3>すべてのユーザーが利用できる削除保留機能</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate<br>
Self-Managed: Free、Premium、Ultimate</p>
</blockquote>
<p>プロジェクトとグループの削除保留機能が、Freeプランを含むすべてのGitLabユーザーに提供されるようになりました。この重要なセキュリティ機能は、削除されたグループやプロジェクトが完全に削除される前に、猶予期間（GitLab.comでは7日間）を設けるものです。この機能により、誤って削除した場合でも複雑な手順を踏まずに簡単に復元できるようになります。</p>
<p>データ保護を基盤機能として組み込むことで、大切なデータを消失リスクから守ります。</p>
<p><a href="https://docs.gitlab.com/administration/settings/visibility_and_access_controls/#deletion-protection">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/526405">イシュー</a><br>
<a href="https://gitlab.com/groups/gitlab-org/-/epics/17208">エピック</a></p>
<p>&lt;img src=&quot;https://about.gitlab.com/images/18_0/tenant_scale_deletion_protcection_all_tiers.png&quot;&gt;</p>
<h3>グループ、プロジェクト、ユーザーAPIのレート制限</h3>
<blockquote>
<p>SaaS: Free、Premium、Ultimate
Self-Managed: -</p>
</blockquote>
<p>すべてのユーザーに対してプラットフォームの安定性とパフォーマンスを向上させることを目的として、プロジェクト、グループ、ユーザーごとにAPIレート制限を追加しました。今回の変更は、当社のサービスに影響を与えているAPI通信の増加に対応するものです。</p>
<p>この制限は平均的な使用パターンに基づいて慎重に設定されており、ほとんどのユースケースにおいて十分な容量を提供するよう設計されています。制限を超えると、「429 Too Many Requests」（リクエスト過多）という応答が返されます。</p>
<p>特定のレート制限と実装情報の詳細については、<a href="https://about.gitlab.com/blog/rate-limitations-announced-for-projects-groups-and-users-apis/">関連のブログ記事をご覧ください</a>。</p>
<p><a href="https://docs.gitlab.com/user/gitlab_com/#rate-limits-on-gitlabcom">ドキュメント</a><br>
<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/461316">イシュー</a></p>
<p>&lt;br&gt;
&lt;br&gt;</p>
<h2>実験的な機能</h2>
<h3>スケジュールされたパイプライン実行ポリシー</h3>
<p>この実験的機能を有効にすると、カスタマイズされたCI/CDジョブやスクリプトを使い、定期スケジュールでパイプライン実行ポリシーをトリガーできます。主な特徴は以下のとおりです。</p>
<ul>
<li>スケジュールされたパイプラインでは、コンプライアンススクリプト、GitLabまたはサードパーティ製のセキュリティスキャン、その他のカスタムCI/CDジョブを強制実行できます。</li>
<li>セキュリティおよびコンプライアンス要件を確実に満たすためのツールとして、スケジュールされたパイプラインを実行して日次、週次、月次のスケジュールでジョブを実行することができます。</li>
<li>スケジュールされたパイプラインは、プロジェクトの<code>.gitlab-ci.yml</code>ファイルにジョブをインジェクトしたり強制したりせず、ダウンストリームのプロジェクトパイプラインに影響を与えません。</li>
<li>代わりに、これらのパイプラインを使用して、デフォルトブランチを定期的に対象とし、依存関係やプロジェクト構成、その他の要件を確認するといったアクションを実行できます。</li>
</ul>
<p>実験を有効にするには<code>policy.yml</code>ファイルを作成するか、セキュリティポリシープロジェクトの既存の<code>policy.yml</code>ファイルを変更して<code>experiments</code>属性を追加します。有効にすると、パイプライン実行ポリシーを設定できるようになります。このポリシーには、パイプライン実行ポリシーが適用されているすべてのプロジェクトでカスタムCI/CDジョブを実行するスケジュールが含まれます。</p>
<p>トリガーされるパイプライン実行ポリシーは複数作成できますが、セキュリティポリシープロジェクトごとに設定できるスケジュールされたパイプライン実行ポリシーは1件のみです。</p>
<p>詳細については、<a href="https://docs.gitlab.com/user/application_security/policies/scheduled_pipeline_execution_policies/">スケジュールされたパイプライン実行ポリシー</a>を参照してください。</p>
<p>&lt;br&gt;
&lt;br&gt;</p>
<h2>バグ修正、パフォーマンスの改善、UIの改善</h2>
<p>GitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。</p>
<p>18.0で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。</p>
<ul>
<li><a href="https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&amp;state=closed&amp;label_name%5B%5D=type%3A%3Abug&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&amp;milestone_title=18.0">バグ修正</a></li>
<li><a href="https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&amp;state=closed&amp;label_name%5B%5D=bug%3A%3Aperformance&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&amp;or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&amp;milestone_title=18.0">パフォーマンスの改善</a></li>
<li><a href="https://papercuts.gitlab.com/?milestone=18.0">UIの改善</a></li>
</ul>
<p>&lt;br&gt;
&lt;br&gt;</p>
<h2>非推奨事項</h2>
<p>新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、<a href="https://docs.gitlab.com/ee/update/deprecations.html">GitLabドキュメント</a>で確認できます。今後の破壊的な変更について通知を受け取るには、<a href="https://about.gitlab.com/breaking-changes.xml">破壊的な変更のRSSフィードにサブスクライブ</a>してください。</p>
<ul>
<li>
<p><a href="https://docs.gitlab.com/ee/update/deprecations.html#resource-owner-password-credentials-grant-is-deprecated">リソースオーナーパスワード認証方式を非推奨化</a></p>
</li>
<li>
<p><a href="https://docs.gitlab.com/ee/update/deprecations.html#cert-manager-helm-chart-update">cert-manager Helm チャートをアップデート</a></p>
</li>
<li>
<p><a href="https://docs.gitlab.com/ee/update/deprecations.html#coverage-guided-fuzz-testing-is-deprecated">カバレッジガイド付きファズテストを非推奨化</a></p>
</li>
</ul>
<p>&lt;br&gt;
&lt;br&gt;</p>
<h2>削除された機能と破壊的な変更</h2>
<p>削除されたすべての機能の一覧は、<a href="https://docs.gitlab.com/ee/update/deprecations.html">GitLabドキュメント</a>で確認できます。今後の破壊的な変更について通知を受け取るには、<a href="https://about.gitlab.com/breaking-changes.xml">破壊的な変更のRSSフィードにサブスクライブ</a>してください。</p>
<ul>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#api-discovery-will-use-branch-pipelines-by-default">APIディスカバリーはデフォルトでブランチパイプラインを使用するように</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#application-security-testing-analyzers-major-version-update">アプリケーションセキュリティテスト（AST）アナライザーのメジャーバージョンをアップデート</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#behavior-change-for-upcoming-and-started-milestone-filters">「今後」および「開始済み」マイルストーンフィルタの動作を変更</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#cicd-job-token-authorized-groups-and-projects-allowlist-enforcement">CI/CDジョブトークン - 「認証されたグループとプロジェクト」許可リストの強制適用</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#cicd-job-token-limit-access-from-your-project-setting-removal">CI/CDジョブトークン - 「プロジェクトからのアクセス制限」設定を削除</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#dast-dast_devtools_api_timeout-will-have-a-lower-default-value">DASTのdast_devtools_api_timeoutのデフォルト値引き下げ</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#dependency-proxy-token-scope-enforcement">依存関係プロキシトークンのスコープ強制</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#deprecate-terraform-cicd-templates">Terraform CI/CD テンプレートを非推奨化</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#deprecate-license-metadata-format-v1">ライセンスメタデータ形式 V1 を非推奨化</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#deprecation-of-storage-enum-in-namespaceprojectsortenum-graphql-api">GraphQL APIのNamespaceProjectSortEnumにおけるSTORAGE列挙型を非推奨化</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#deprecation-of-name-field-in-projectmonthlyusagetype-graphql-api">GraphQL APIのProjectMonthlyUsageType におけるnameフィールドを非推奨化</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#fallback-support-for-gitlab-nginx-chart-controller-image-v131">GitLab NGINXチャートコントローラーイメージv1.3.1のフォールバックサポート</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#git_data_dirs-for-configuring-gitaly-storages">Gitalyストレージを設定するためのgit_data_dirs</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#legacy-web-ide-is-deprecated">従来のWeb IDEを非推奨化</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#limit-number-of-scan-execution-policy-actions-allowed-per-policy">スキャン実行ポリシーごとに許可されるアクションの数を制限</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#limited-scan-actions-in-a-scan-execution-policy">スキャン実行ポリシーにおけるscanアクションを制限</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#major-update-of-the-prometheus-subchart">Prometheusサブチャートのメジャーアップデート</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#new-data-retention-limits-for-vulnerabilities-on-gitlabcom">GitLab.comでの脆弱性データ保持期間の新しい制限</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#postgresql-14-and-15-no-longer-supported">PostgreSQL 14および15はサポートされなくなります</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#raspberry-pi-32-bit-packages-are-deprecated">Raspberry Pi 32 ビットパッケージを非推奨化</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#reject-container-image-pull-policies-not-in-allowed_pull_policies">allowed_pull_policies に含まれないコンテナイメージのプルポリシーを拒否</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#remove-duoproassigneduserscount-graphql-field">duoProAssignedUsersCount GraphQL フィールドを削除</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#replace-add_on_purchase-graphql-field-with-add_on_purchases">GraphQL フィールドadd_on_purchaseをadd_on_purchasesに置き換え</a></li>
<li>ネームスペース<a href="https://docs.gitlab.com/ee/update/deprecations.html#replace-namespace-add_on_purchase-graphql-field-with-add_on_purchases">のGraphQL フィールドadd_on_purchaseをadd_on_purchasesに置き換え</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#support-for-suse-linux-enterprise-server-15-sp2">SUSE Linux Enterprise Server 15 SP2をサポート</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#the-direction-graphql-argument-for-cijobtokenscoperemoveproject-is-deprecated">ciJobTokenScopeRemoveProjectのGraphQL 引数directionを非推奨化</a></li>
<li><a href="https://docs.gitlab.com/ee/update/deprecations.html#toggle-notes-confidentiality-on-apis">APIでの注釈の機密性切り替え</a></li>
</ul>
<h3>変更履歴</h3>
<p>変更内容をすべて表示するには、次のページから変更履歴を確認してください。</p>
<ul>
<li><a href="https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md">GitLab</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md">GitLab Runner</a></li>
<li><a href="https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md">VS CodeのGitLabワークフロー</a></li>
<li><a href="https://gitlab.com/gitlab-org/cli/-/releases">GitLab CLI</a></li>
</ul>
<h3>インストール</h3>
<p>GitLabを新規にインストールする場合は、<a href="https://about.gitlab.com/ja-jp/install/">GitLabのダウンロードページ</a>をご覧ください。</p>
<h3>更新事項</h3>
<p><a href="https://about.gitlab.com/ja-jp/update/">更新ページ</a>をご覧ください。</p>
<h3>ご不明な点がある場合</h3>
<p>ご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、<a href="https://forum.gitlab.com/">GitLabフォーラム</a>にアクセスして質問を投稿してください。</p>
<h3>GitLabサブスクリプションプラン</h3>
<ul>
<li><a href="https://about.gitlab.com/pricing/">Free</a><br>
ユーザー向けの永久無料機能を提供</li>
<li><a href="https://about.gitlab.com/pricing/premium/">Premium</a><br>
チームの生産性と調整を強化</li>
<li><a href="https://about.gitlab.com/pricing/ultimate/">Ultimate</a><br>
組織全体のセキュリティ、コンプライアンス、プランニングに対応</li>
</ul>
<p>GitLabのすべての機能を<a href="https://about.gitlab.com/ja-jp/free-trial/">無料トライアル</a> でお試しいただけます。</p>
<p>&lt;br&gt;
&lt;br&gt;</p>
<p><em>監修：ソリス ジェレズ / Jerez Solis <a href="https://gitlab.com/jerezs">@jerezs</a>&lt;br&gt;
（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）</em></p>
<h3>過去の日本語リリース情報</h3>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/">GitLab 18.0</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/">GitLab 17.11</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/">GitLab 17.10</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/">GitLab 17.9</a></li>
</ul>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/">GitLab 17.8</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/">GitLab 17.7</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/">GitLab 17.6</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/">GitLab 17.5</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/">GitLab 17.4</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/">GitLab 17.3</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/">GitLab 17.2</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/">GitLab 17.1</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/">GitLab 16.11</a></li>
</ul>
]]></content>
        <author>
            <name>GitLab Japan Team</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab-japan team</uri>
        </author>
        <published>2025-05-15T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab PremiumおよびUltimateのすべてのユーザーにAIの恩恵を]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/gitlab-premium-with-duo/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/gitlab-premium-with-duo/"/>
        <updated>2025-05-15T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>GitLab 18.0をリリースしました。このリリースでは、DevSecOpsの中核となるワークフロー、セキュリティとコンプライアンスの向上、そしてAI技術における革新的な進化と未来像が凝縮されています。<strong>本リリースに合わせて、GitLab PremiumおよびUltimateで、GitLab Duoの基本的なAI機能を追加料金なしでご利用いただけるようになりました。</strong> PremiumおよびUltimateのお客様は全員、サポートされているソースコードエディタやIDEから直接、GitLab Duoコード提案とGitLab Duo Chatをすぐにご利用いただけます。</p>
<h2>すべての開発チームにAIを</h2>
<p>人工知能（AI）は今や、デベロッパーエクスペリエンスの中核をなしています。AIは、コードベースの分析、入力中リアルタイムでの提案の提供、プロジェクトのコンテキストに基づいた関数やメソッドの作成、繰り返しの作業の軽減、コードレビューの自動化など、さまざまな方法でコーディングを強化します。</p>
<p>この数年間、当社ではこうした生成AIやエージェント型AIの機能をGitLabプラットフォームに統合するために<a href="https://about.gitlab.com/ja-jp/gitlab-duo/">GitLab Duo</a>を開発してきました。GitLabが実施した<a href="https://about.gitlab.com/ja-jp/developer-survey/">グローバルDevSecOps調査</a>によると、デベロッパーはコード作成以外のタスクに作業時間の79%を費やしています。コード作成はソフトウェアライフサイクルの始まりに過ぎないため、当社ではソフトウェア開発ライフサイクル全体をとおしてAIを統合する戦略を採用してきました。</p>
<p>本リリースではこの戦略をさらに進め、デベロッパーのみなさまが追加料金なしでAIの恩恵を受けられるように、GitLab PremiumおよびUltimateプランにGitLab Duoの基本機能を追加しました。</p>
<p>PremiumとUltimateでChatとコード提案をご利用いただけるようになったことで、すべてのソフトウェアエンジニアが、さまざまなツールやライセンス、そして管理体制を必要とせずに、IDE内でワークフローを高速化できます。既存のPremiumおよびUltimateのお客様は全員、GitLab 18.0へのアップグレード後にすぐにChatとコード提案をご利用いただけるようになります。また、この機能強化は新規のお客様には標準機能として提供されます。</p>
<blockquote>
<p><strong>「GitLabはすでに、分散されたツールチェーンへの依存を排除し、これにより連携していないソリューションにかかるコストを削減し、ワークフローを効率化する上で重要な役割を果たしています。GitLab PremiumにGitLab Duoを追加することで、さらなる効率化とコスト削減が期待できます。日常的なコーディング作業にかかる時間が削減されるため、デベロッパーは真のビジネス価値を生み出す複雑な課題に、より多くの時間を費やせるようになります。」</strong></p>
<ul>
<li>McKenzie Intelligence Services社、最高技術責任者、Andrei Nita氏</li>
</ul>
</blockquote>
<p>&lt;div style=&quot;padding:56.25% 0 0 0;position:relative;&quot;&gt;&lt;iframe src=&quot;https://player.vimeo.com/video/1083723619?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479&quot; frameborder=&quot;0&quot; allow=&quot;autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media&quot; style=&quot;position:absolute;top:0;left:0;width:100%;height:100%;&quot; title=&quot;GitLab Premium with Duo Core&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;script src=&quot;https://player.vimeo.com/api/player.js&quot;&gt;&lt;/script&gt;</p>
<p>&lt;br&gt;&lt;/br&gt;</p>
<p>本リリースから、PremiumおよびUltimateのお客様は、以下のAIネイティブ機能をご利用いただけます。</p>
<h4>GitLab Duoコード提案</h4>
<ul>
<li>コメントから完全な関数やコードブロックを生成</li>
<li>入力時にAIによる的確なコード補完を実行</li>
<li>20以上のプログラミング言語をサポート</li>
<li>主要なIDE各種で利用可能</li>
</ul>
<p>コード提案機能については、こちらの操作ガイドをご覧ください（ツアーを開始するには以下の画像をクリックしてください）。</p>
<p>&lt;a href=&quot;https://gitlab.navattic.com/code-suggestions&quot;&gt;&lt;img src=&quot;//images.ctfassets.net/r9o86ar0p03f/4nclgZ2JUeQ0hR4wjOS30P/ba948ae1a0dce0cff4469ca06490efb1/Screenshot_2024-08-27_at_9.24.32_AM.png&quot; alt=&quot;GitLab Duo Code Suggestions cover image&quot;&gt;&lt;/a&gt;</p>
<p>詳細については、<a href="https://docs.gitlab.com/user/project/repository/code_suggestions/">コード提案のドキュメント</a>でもご確認いただけます。</p>
<h4>GitLab Duo Chat</h4>
<ul>
<li>馴染みのないコードを分かりやすく解説し、複雑な機能の理解をサポート</li>
<li>既存のコードをリファクタリングして品質と保守性を向上</li>
<li>バグを早期に発見できるように、包括的なテストケースを自動作成</li>
<li>ワークフロー内でコードの問題を直接修正</li>
</ul>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673912/Blog/Content%20Images/Duo_Chat_-_gif_-_API_endpoint_explanation__3_.gif" alt="ChatによるAPIエンドポイントの説明"></p>
<p>詳細については、<a href="https://docs.gitlab.com/user/gitlab_duo_chat/">Duo Chatのドキュメント</a>をご覧ください。</p>
<blockquote>
<p><strong>「私たちGitLabユーザーにとって、GitLab Duoのインテリジェントなコード提案は、デベロッパーの日常業務を支える資産となっています。Chat機能と組み合わせることで、即時にフィードバックを得て改善できるため、開発サイクルが加速し、より安全なコードベースが実現できています。ワークフローにシームレスに統合された強力な機能です。」</strong></p>
<ul>
<li>Ignite by FORVIA HELLA社、最高技術責任者、Felix Kortmann氏</li>
</ul>
</blockquote>
<h2>GitLab Premiumのお客様もGitLab Duo Enterpriseをご利用可能に</h2>
<p>多くのお客様からのご要望に応え、<a href="https://about.gitlab.com/ja-jp/pricing/premium/">GitLab Premium</a>をご利用のお客様は、GitLab UltimateにアップグレードすることなくAI機能をフル搭載したGitLab Duo Enterpriseをご購入いただけるようになりました。Premiumのお客様は、ソフトウェア開発ライフサイクル全体にシームレスに統合された、充実したAI機能をご活用いただけます。</p>
<p>Duo Enterprise のパワフルな機能ラインナップは次のとおりです。</p>
<ul>
<li><a href="https://docs.gitlab.com/user/gitlab_duo/use_cases/#root-cause-analysis-use-cases">GitLab Duo根本原因分析</a>：CI/CDパイプラインの失敗を迅速に解決して、パイプラインを健全に保ちます。</li>
<li><a href="https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code">GitLab Duoコードレビュー</a>：GitLab Duoをコードレビュアーとして活用することで、マージリクエストのレビューを高速化します。</li>
<li><a href="https://docs.gitlab.com/user/gitlab_duo_chat/">高度なチャット</a>：会話の内容を要約し、コード変更を理解できるように支援するほか、複雑な設定のサポートを提供します。</li>
<li><a href="https://docs.gitlab.com/administration/gitlab_duo_self_hosted/">GitLab Duo Self-Hosted</a>：使用が許可されたAIモデルを社内でホスティングすることで、インターネット未接続（エアギャップ）環境やオフライン環境でもGitLab Duoを活用できます。</li>
</ul>
<p>GitLab Duo Enterpriseの提供と並行して、今GitLab Premiumの価値向上に向けた投資も強化しています。GitLab 17のリリース以降、以下を含む<a href="https://gitlab.com/gitlab-org/gitlab/-/releases">100件を超える機能や改善を実装してきました</a>。</p>
<ul>
<li><a href="https://about.gitlab.com/blog/ci-cd-catalog-goes-ga-no-more-building-pipelines-from-scratch/">CI/CDカタログ</a>：デベロッパーが既存のCI/CDコンポーネントや設定を共有、検索、再利用できる一覧ページ</li>
<li><a href="https://docs.gitlab.com/user/packages/virtual_registry/">アーティファクトレジストリ</a>：デベロッパーにアーティファクトへの安全なアクセスを提供するとともに、CI/CDパイプラインとのシームレスな統合を実現</li>
<li><a href="https://docs.gitlab.com/user/project/remote_development/">リモート開発</a>：デベロッパーがオンデマンドのクラウドベースの開発環境で作業できるように支援する機能</li>
</ul>
<blockquote>
<p><a href="https://about.gitlab.com/ja-jp/pricing/premium/">GitLab Premiumの詳細はこちらをご覧ください。</a></p>
</blockquote>
<h2>GitLab Duo：組織の現在のステージに対応するAI</h2>
<p>GitLabは、ProからEnterpriseまで多彩なDuoサービスをご用意しており、お客様のAI導入段階に最適なソリューションをお選びいただけます。チームのAI活用レベルが高まるにつれて、より多くの機能を活用して、安全なソフトウェアをより迅速にビルド、テスト、デプロイすることができます。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673912/Blog/Content%20Images/Screenshot_2025-05-14_at_8.50.34_AM.png" alt="GitLab Duoプランの主な機能"></p>
<h2>GitLab UltimateおよびPremiumの既存のお客様がGitLab Duoを使い始めるには</h2>
<p>GitLab 18.0以降、UltimateとPremiumの既存のお客様は、コード提案とChatがデフォルトではオフになっていますが、以下の手順で簡単に有効にできます。</p>
<p>GitLab PremiumおよびUltimateでGitLab Duoを利用する手順：</p>
<ol>
<li>GitLab PremiumまたはUltimateを利用中であることを確認します。いずれも導入していない場合は、無料トライアルを開始できます。</li>
<li>組織の設定で、GitLab Duoを有効にします。</li>
<li>ローカルIDEを使用している場合は、対応するGitLab<a href="https://docs.gitlab.com/editor_extensions/#available-extensions">エディタ拡張機能</a>をインストールします。</li>
<li>サポートされているローカルIDEまたはGitLab Web IDEで、コード提案やChatの利用を開始します。</li>
</ol>
<p><strong>注</strong>：新規ユーザーまたはトライアル中の場合、GitLabのAI機能が自動的に有効になります。</p>
<h2>AIネイティブ開発にはDevSecOpsプラットフォームが不可欠</h2>
<p>今やAIによって、デベロッパーエクスペリエンスは根本から再構築されつつあります。これからの組織では、ソフトウェア開発に携わる人員が単に増えるだけではなく、AIによって本番環境向けコードの量も増えることになります。<strong>そのため、GitLabの存在価値がはかつてないほど高まっています。</strong></p>
<p>当社では、この新時代に向け、GitLab Duoを備えたGitLab PremiumおよびUltimateを構築しました。これによりチームは、あらゆるコードを安全に一元管理できる環境を構築できます。組織全体でAIがコードを生成する環境下で、GitLabが司令塔としての役割を担います。セキュリティスキャンやコンプライアンスチェック、パイプライン管理のために別々のツールを導入する必要はありません。組織の成長に合わせてスケールする単一の統合プラットフォームで、各コードが本番環境へのリリース前に基準を満たしているかを確認できます。AIによって開発速度が加速する中、GitLabを使えば全工程を通じて一貫性のあるコントロール、セキュリティ、品質を保てます。</p>
<blockquote>
<p>チームの生産性を向上させるGitLab Duoの活用方法については、<a href="https://about.gitlab.com/ja-jp/pricing/premium/">GitLab Premiumのページをご覧ください</a>。すでにGitLabをご利用の場合は、GitLab担当者にご連絡いただき、デモンストレーションをご予約ください。また、2025年6月24日に<a href="https://about.gitlab.com/eighteen/">GitLab 18バーチャルリリースイベント</a>を開催します。AIとともに進化するソフトウェア開発の未来像を探る機会となりますので、ぜひご参加ください。</p>
</blockquote>
<p><em>本ブログは、<a href="https://about.gitlab.com/blog/gitlab-premium-with-duo/">Unlocking AI for every GitLab Premium and Ultimate customer</a>の抄訳です。内容に相違がある場合は、原文が優先されます。</em></p>
]]></content>
        <author>
            <name>David DeSanto, Chief Product Officer, GitLab</name>
            <uri>https://about.gitlab.com/blog/authors/david-desanto, chief product officer, gitlab</uri>
        </author>
        <published>2025-05-15T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[🌞 5月のMonday Merge：RSAでの発見、AIアシスタント、 さらに広がるDevSecOpsの世界！]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/monday-merge-2025-may-9/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/monday-merge-2025-may-9/"/>
        <updated>2025-05-09T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>GitLabコミュニティのみなさん、こんにちは！</p>
<p>5月がやってきて、勢いも加速中！RSACでの学びから、GitLab Duo with Amazon Q の一般提供開始、GitLab 17.11、そしてシーメンス社の素晴らしいカスタマーストーリーまで、今月のMonday Mergeはイノベーションとインサイト、インスピレーションが満載です。</p>
<p>さっそく見ていきましょう！</p>
<h2>🗞️ RSAカンファレンス2025 特別レポート</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687422/Blog/Content%20Images/image8.png" alt="monday merge may fatima"></p>
<p>先週のサンフランシスコは、霧とコーヒーだけでなく、サイバーセキュリティの熱気にも包まれていました。RSAカンファレンス2025では業界のトップが集結し、GitLabもブース#4324で参加しました。イベントでは、AIアシスタント、組み込み型セキュリティ、透明性の高いDevSecOpsの実践などを通して、「協業こそがセキュリティの鍵」という明確なメッセージが示されていました。</p>
<h2>🤝 GitLab Duo with Amazon Q：ついに一般提供開始、とっても便利です！</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687422/Blog/Content%20Images/image3.png" alt="monday merge may gitlab duo with amazon q"></p>
<p>新しいAIコンビにご注目を！GitLab Duo with Amazon Qが一般提供となり、AWSでの開発のあり方が大きく変わります。コードを書くとき、マージリクエストのレビュー時、そして古いJavaの更新（リファクタリング戦士たち、ありがとう！）も、AIアシスタントが重荷を引き受けます。</p>
<p>GitLabに組み込まれたAmazon Qを使えば、<code>/q dev</code>や<code>/q transform</code>のような直感的なプロンプトで、課題から実装までを数分で完了できます。Volkswagen Digital Solutions社やAvaility社のような早期導入企業は、すでにワークフローの高速化や複雑な環境のモダナイゼーションに活用中です。</p>
<p>🔗 <a href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-with-amazon-q-agentic-ai-optimized-for-aws/">GitLab Duo with Amazon Qの詳細を見る</a></p>
<p>🔗 <a href="https://about.gitlab.com/blog/gitlab-duo-amazon-q-transform-ideas-into-code-in-minutes/">アイデアを数分でコードに変える方法（英語）</a></p>
<h2>🚀 GitLab 17.11：コンプライアンス、カスタマイズ、さらなるAIの進化</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687423/Blog/Content%20Images/image2.png" alt="monday merge may GitLab release 17.11"></p>
<p>今月のリリースでは60以上の機能改善があり、セキュリティ管理の強化、柔軟性の向上、AIを使った精密なワークフローの高速化を実現。規制のある環境での運用から、カスタムプロセスの拡張、AIアシスタントの活用まで、GitLab 17.11は必要な管理機能、ダッシュボード、統合機能を提供します。</p>
<h3>✨ 主なハイライト</h3>
<ul>
<li>
<p><strong>カスタムコンプライアンスフレームワーク</strong>：要件定義、50以上のコントロールとのマッピング、詳細なレポートの生成</p>
</li>
<li>
<p><strong>Duo Self-Hosted新機能（ベータ）</strong>：根本原因分析、AIによる要約、脆弱性インサイトなど</p>
</li>
<li>
<p><strong>Eclipseプラグイン（ベータ）</strong>：DuoがEclipseに対応し、さらに統合されたコーディング体験が可能に</p>
</li>
<li>
<p><strong>パッケージとタグの保護</strong>：重要な資産を万全に保護</p>
</li>
<li>
<p><strong>カスタムフィールドとイシュー画面の改善</strong>：構造化されたメタデータの追加、タスクの整理、管理効率向上</p>
</li>
<li>
<p><strong>CI/CDパイプライン入力</strong>：動的なコンテンツを柔軟かつ安全に注入</p>
</li>
</ul>
<p>🎉 さらに、GitLabコミュニティによる284件の貢献に感謝します！Mavenパッケージ保護やDuo、CI/CD改善など、世界中のコントリビューターの創造力と献身が反映されています。みなさんの協力がなくては実現できませんでした 🙌</p>
<p>🔗 <a href="https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/">17.11のリリースノートを見る</a></p>
<h2>☁️ AWSサミットで直接お会いしましょう！</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687423/Blog/Content%20Images/image4.png" alt="monday merge may aws summit">
GitLabはAWSサミットのグローバルスポンサーとして、各地にDevSecOpsを届けます。<br>
ぜひブースにお立ち寄りください：</p>
<ul>
<li>ライトニングトークやハンズオンデモ</li>
<li>GitLabのAI・セキュリティ専門家との対話</li>
<li>AWS上での開発をより高速・安全に進めるヒント</li>
</ul>
<p>📍<a href="https://aws.amazon.com/jp/summits/japan/">AWS Summit Japan 2025</a>（2025年6月25日、26日）、<a href="https://about.gitlab.com/events/aws-summits/">その他開催地をみる</a></p>
<h2>🏗️ 事例のご紹介：シーメンス社がGitLabで協業をスケール</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687423/Blog/Content%20Images/image6.png" alt="monday merge may siemens 事例"></p>
<p>世界有数のエンジニアリング企業が、開発者の協業の在り方を見直すとどうなるか？ それを体現しているのが、シーメンス社の驚くべきDevSecOpsストーリーです。</p>
<p>2014年、組み込みLinux開発において、より良い協業方法を模索していた小さな先進的チームから全ては始まりました。今では、シーメンス社の75,000人以上の開発者がGitLabを中心となるプラットフォームとして利用し、1日あたり20万件以上のビルドを実施。GitLab導入は単なる技術的な実装にとどまらず、チームをつなげ、インナーソース文化を育み、企業全体のイノベーションを促進しました。</p>
<p>さらに、シーメンス社はGitLabのユーザーであると同時に構築者でもあります。300以上のマージリクエスト、12件のMVP受賞を誇り、プラットフォームの進化にも貢献しながら、自社のDevOps力も強化しています。</p>
<p>現在はAIアシスタントを自社モデルで活用し、マージリクエストを強化する独自の「CodeAI」ボットを導入。AIを“代替”ではなく“創造性と協業の鍵”として未来に備えています。</p>
<p>🔗 <a href="https://www.computerwoche.de/article/3963808/eine-neue-ara-der-entwicklerzusammenarbeit.html">シーメンス社のストーリー全文を読む（ドイツ語）</a></p>
<h2>📚 おすすめ読みもの：AI、リスク、そしてGitLabリーダーたちの見解</h2>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687125/Blog/Content%20Images/08_LinkedIn_Header_Images_April_What_We_re_Reading.png" alt="08 Header Images April What We’re Reading"></p>
<ul>
<li><strong>AIアシスタント：開発者の可能性をスケールさせる</strong><br>
Emilio Salvadorが語る、「未来のソフトウェア開発は一人ではできない」理由。専任のAIアシスタントは新しいチームメイトと語ります。</li>
</ul>
<p>🔗 <a href="https://about.gitlab.com/the-source/ai/agentic-ai-unlocking-developer-potential-at-scale/">続きを読む（英語）</a></p>
<ul>
<li><strong>リスクインテリジェンスをソフトウェアサプライチェーンに組み込む</strong><br>
<a href="https://www.linkedin.com/in/leefaus/?lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3B4GSpHonESSme7Hfb1%2BuxeQ%3D%3D">Lee Faus</a>が、リスク対策を単なる後付けではなく、パイプライン全体に組み込む方法を解説します。</li>
</ul>
<p>🔗 <a href="https://about.gitlab.com/the-source/security/embedding-risk-intelligence-into-your-software-supply-chain/">続きを読む（英語）</a></p>
<ul>
<li><strong>セキュリティ対策を公開するメリットとデメリット</strong><br>
<a href="https://www.linkedin.com/in/joshlemos/?lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3B4GSpHonESSme7Hfb1%2BuxeQ%3D%3D">Josh Lemos</a>が<a href="https://www.linkedin.com/company/tines-io/?lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3B4GSpHonESSme7Hfb1%2BuxeQ%3D%3D">Tines</a>で、透明性のあるセキュリティ、AIの脅威、コーヒーチャットの重要性について語ります。</li>
</ul>
<p>🔗 <a href="https://www.tines.com/blog/gitlab-josh-lemos/">続きを読む（英語）</a></p>
<ul>
<li><strong>エンジニアリングチームにAIを導入する3つの方法</strong><br>
<a href="https://www.linkedin.com/in/sabrinafarmer/?lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3B4GSpHonESSme7Hfb1%2BuxeQ%3D%3D">Sabrina Farmer</a>が、AIをチームの味方にするステップバイステップガイドを紹介します。</li>
</ul>
<p>🔗 <a href="https://www.forbes.com/councils/forbestechcouncil/2025/04/25/three-ways-to-operationalize-ai-for-engineering-teams/">続きを読む（英語）</a></p>
<ul>
<li><strong>精密にGo-To-Market戦略を進めるには</strong><br>
<a href="https://www.linkedin.com/in/brian-robins-5254864/?lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3B4GSpHonESSme7Hfb1%2BuxeQ%3D%3D">Brian Robins</a>がGitLabの、市場戦略、「Ultimate」が成長を牽引する理由、そして財務の“人間らしさ”について語ります。</li>
</ul>
<p>🔗 <a href="https://cfothoughtleader.com/cfopodcasts/1083-navigating-the-go-to-market-roadmap-with-precision-brian-robins-cfo-gitlab/">続きを読む（英語）</a></p>
<h2>💬 本日のインスピレーション</h2>
<blockquote>
<p>「セキュリティとは、新たな技術的フロンティアへ安全に渡るための架け橋である。」&lt;br&gt;– Magda Chelly</p>
</blockquote>
<p>AIアシスタント、コンプライアンス管理、コラボレーションのワークフローなど、新たなフロンティアへ進んでいく中で、セキュリティは単なるチェックポイントではなく、イノベーションを可能にする土台だということを忘れずに。架け橋を丁寧に築き、自信を持って渡り、素晴らしいものを創り出していきましょう。</p>
<p>それでは、次回まで、好奇心を持ち続け、つながりを大切にし、Happy Merging！</p>
<p><a href="https://www.linkedin.com/in/sugaroverflow/">Fatima Sarah Khalid</a> | GitLab Developer Advocate
<img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687125/Blog/Content%20Images/SignOffBanner.png" alt="SignOffBanner"></p>
<p>P.S. DevSecOpsの最新情報を逃さないように、ぜひ来月も読んでくださいね！</p>
]]></content>
        <author>
            <name>GitLab Japan Team</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab-japan team</uri>
        </author>
        <published>2025-05-09T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[自律型AIに関するガイドとリソース]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/agentic-ai-guides-and-resources/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/agentic-ai-guides-and-resources/"/>
        <updated>2025-05-07T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<h2>自律型AIの定義</h2>
<p>自律型AIは、高度な言語モデルや自然言語処理を活用して、自律的に行動を起こすタイプの人工知能です。従来の生成AIツールが常に人間からの指示を必要とするのに対し、自律型AIはリクエストを理解し、意思決定を行い、目標達成のために複数ステップにわたる計画を実行できます。複雑なタスクを管理可能なステップに分解し、課題に直面した際には適応学習を通じてアプローチを柔軟に変えることができます。</p>
<p><a href="https://about.gitlab.com/ja-jp/topics/agentic-ai/">自律型AIの詳細はこちら</a></p>
<h2>自律型AIに関するインサイト</h2>
<ul>
<li><a href="https://about.gitlab.com/the-source/ai/emerging-agentic-ai-trends-reshaping-software-development/">新たに登場し、ソフトウェア開発に変革をもたらす自律型AIのトレンド</a>：自律型AIによって、個別にコーディングを行う開発プロセスを、セキュリティを維持しながら生産性を向上させるインテリジェントなワークフローへとどのように変えられるかを説明します。</li>
<li><a href="https://about.gitlab.com/ja-jp/the-source/ai/agentic-ai-unlocking-developer-potential-at-scale/">デベロッパーの可能性を大きく解放する自律型AI</a>：自律型AIは、コード補完の枠を超え、複雑なタスクに主体的に挑むパートナーへと進化しつつあり、ソフトウェア開発を大きく変革しようとしています。</li>
<li><a href="https://about.gitlab.com/ja-jp/the-source/ai/ai-trends-for-2025-agentic-ai-self-hosted-models-and-more/">自律型AI、GitLab Duoセルフホストモデルなど：2025年のAIトレンド</a>：オンプレミスでのモデル展開から、インテリジェントで適応性の高いAIエージェントまで、ソフトウェア開発における主要なAIトレンドをご紹介します。</li>
<li><a href="https://about.gitlab.com/the-source/ai/how-agentic-ai-unlocks-platform-engineering-potential/">自律型AIによってプラットフォームエンジニアリングの可能性を引き出す方法</a>：自律型AIによって複雑なワークフローを自動化し、標準化を大規模に実施することで、どのようにプラットフォームエンジニアリングをレベルアップできるかを説明します。</li>
</ul>
<h2>自律型AIを導入するためのベストプラクティス</h2>
<ul>
<li><a href="https://about.gitlab.com/the-source/ai/implementing-effective-guardrails-for-ai-agents/">AIエージェント向けに効果的なガードレールを実装する</a>：コンプライアンス制御やインフラ保護からユーザーアクセス管理まで、DevSecOps環境においてAIエージェント向けに実装すべきセキュリティガードレールをご紹介します。</li>
</ul>
<h2>GitLabが提供する自律型AI機能</h2>
<h3>GitLab Duo with Amazon Q</h3>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-with-amazon-q-agentic-ai-optimized-for-aws/">GitLab Duo with Amazon Q（AWS向けに最適化された自律型AI）の一般提供を開始</a>：AIを搭載した包括的なDevSecOpsプラットフォームと業界最高水準のクラウドコンピューティング機能の組み合わせにより、開発サイクルの高速化、自動化の推進、そしてコード品質の向上を可能にします。</li>
<li><a href="https://about.gitlab.com/blog/devsecops-agentic-ai-now-on-gitlab-self-managed-ultimate-on-aws/">DevSecOps + 自律型AI：AWSインスタンスのGitLab Self-Managed Ultimateで利用可能に</a>：AWSインスタンスのGitLab Self-Managed Ultimateで、DevSecOps向けに強化されたAI搭載エージェントを使い始めましょう。GitLab DuoとAmazon Qの両方のメリットを得られます。</li>
<li><a href="https://about.gitlab.com/ja-jp/partners/technology-partners/aws/">GitLab Duo with Amazon Qパートナーページ</a></li>
</ul>
<p>以下の動画で、GitLab Duo with Amazon Qを実際に使用する様子をご覧いただけます。</p>
<p>&lt;div style=&quot;padding:56.25% 0 0 0;position:relative;&quot;&gt;&lt;iframe src=&quot;https://player.vimeo.com/video/1075753390?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479&quot; frameborder=&quot;0&quot; allow=&quot;autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media&quot; style=&quot;position:absolute;top:0;left:0;width:100%;height:100%;&quot; title=&quot;Technical Demo: GitLab Duo with Amazon Q&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;script src=&quot;https://player.vimeo.com/api/player.js&quot;&gt;&lt;/script&gt;</p>
<h4>ガイド付きツアー</h4>
<p>以下の画像をクリックすると、GitLab Duo with Amazon Qのツアーが開始されます。</p>
<p><a href="https://gitlab.navattic.com/duo-with-q"><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673568/Blog/Content%20Images/Screenshot_2025-05-07_at_7.24.45_AM.png" alt="GitLab Duo with Amazon Qのインタラクティブなツアー"></a></p>
<h4>GitLab Duo with Amazon Qのチュートリアル</h4>
<ul>
<li><a href="https://about.gitlab.com/blog/gitlab-duo-amazon-q-transform-ideas-into-code-in-minutes/">GitLab Duo + Amazon Q：数分でアイデアをもとにコードを作成</a>：新たに追加されたGitLab Duo with Amazon Qは、イシューの説明文を分析し、完全に動作するコードの自動生成を通じてソリューションを提供することで、開発ワークフローを加速します。</li>
</ul>
<h3>GitLab Duo Workflow</h3>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/gitlab-duo/workflow/">GitLab Duo Workflow</a>：安全な自律型AIソフトウェア開発の未来</li>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-workflow-enterprise-visibility-and-control-for-agentic-ai/">GitLab Duo Workflow：自律型AIに対するエンタープライズレベルの可視性と管理</a>：安全で自律的かつコンテキスト認識型のAIエージェントに複雑なタスクを任せることで、デベロッパーは革新的なソフトウェアの迅速なリリースに専念できます。現在、限定公開のベータ版のウェイトリスト受付中です。</li>
<li><a href="https://about.gitlab.com/ja-jp/gitlab-duo/workflow/">GitLab Duo Workflow</a></li>
<li><a href="https://docs.gitlab.com/user/duo_workflow/">GitLab Duo Workflowのドキュメント</a></li>
</ul>
<p>以下の動画では、GitLab Duo Workflowに関する詳細をご紹介しています。</p>
<p>&lt;!-- blank line --&gt;
&lt;figure class=&quot;video_container&quot;&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/eN2Sd5UNc0g?si=C9HibBJ3QDDHADq2&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt; &lt;/iframe&gt;
&lt;/figure&gt;
&lt;!-- blank line --&gt;</p>
<h3>ガイド付きツアー</h3>
<p>以下の画像をクリックすると、GitLab Duo Workflowのツアーが開始されます。</p>
<p><a href="https://gitlab.navattic.com/duo-workflow"><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673569/Blog/Content%20Images/Screenshot_2025-05-07_at_7.29.57_AM.png" alt="GitLab Duo Workflowのガイド付きツアー"></a></p>
<h4>GitLab Duo Workflowのチュートリアルとユースケース</h4>
<ul>
<li>
<p><a href="https://about.gitlab.com/blog/refactoring-javascript-to-typescript-with-gitlab-duo-workflow/">GitLab Duo Workflowを使ってJavaScriptコードをTypeScriptにリファクタリングする</a></p>
</li>
<li>
<p><a href="https://about.gitlab.com/blog/automate-tedious-coding-tasks-with-gitlab-duo-workflow/">面倒なコーディング作業をGitLab Duo Workflowで自動化</a>：自律型AIを導入すると、これまで繰り返しの作業に費やしていた時間が削減されるため、革新的なソリューションの開発や次の重要な製品のリリースに注力できるようになります。</p>
</li>
<li>
<p><a href="https://about.gitlab.com/blog/use-gitlab-duo-workflow-to-improve-application-quality-assurance/">GitLab Duo Workflowを活用してアプリケーションの品質保証を向上</a>：自律型AIを使用してJavaアプリケーションに単体テストを追加する方法をステップ別にご説明します（チュートリアル動画を含む）。</p>
</li>
<li>
<p><a href="https://about.gitlab.com/blog/solving-complex-challenges-with-gitlab-duo-workflow/">GitLab Duo Workflowを使って複雑な課題を解決</a>：GitLabカスタマーサクセスマネジメントチームが、パッケージレジストリにおけるHelmチャートの制限への対処など、実際の問題解決においてどのように自律型AIを活用しているかをご紹介します。</p>
</li>
</ul>
<h2>GitLab Universityでさらに詳しく学ぶ</h2>
<ul>
<li><a href="https://university.gitlab.com/pages/ai">GitLab Duo入門コース</a></li>
<li><a href="https://university.gitlab.com/learning-paths/gitlab-duo-enterprise-learning-path">GitLab Duo Enterpriseを体系的に学ぶコース</a></li>
</ul>
<h2>その他のAI関連リソース</h2>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/developer-survey/2024/ai/">2024年グローバルDevSecOps調査：DevSecOpsにおけるAI導入のトレンドと進化</a></li>
<li><a href="https://about.gitlab.com/ja-jp/topics/devops/the-role-of-ai-in-devops/">DevOpsにおけるAIの役割</a></li>
<li><a href="https://about.gitlab.com/ja-jp/blog/categories/ai-ml/">GitLabによるAIと機械学習関連の最新記事</a></li>
<li><a href="https://about.gitlab.com/ja-jp/gitlab-duo/">GitLab Duo</a></li>
</ul>
]]></content>
        <author>
            <name>GitLab</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab</uri>
        </author>
        <published>2025-05-07T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLabのカスタムコンプライアンスフレームワークをDevSecOps環境で活用する方法]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/how-to-use-gitlabs-custom-compliance-frameworks-in-your-devsecops/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/how-to-use-gitlabs-custom-compliance-frameworks-in-your-devsecops/"/>
        <updated>2025-04-30T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>コンプライアンスは、単なるチェック項目ではなく、業務リスクから顧客の信頼に至るまで、あらゆるものに影響を与える重要なビジネス機能です。開発チームにとっては、コンプライアンス要件と開発速度のバランスを取ることは特に困難です。GitLabの<a href="https://about.gitlab.com/blog/introducing-custom-compliance-frameworks-in-gitlab/">カスタムコンプライアンスフレームワーク</a>を使えば、コンプライアンスの確認を開発ワークフローに直接統合することができます。この記事では、この機能の概要と、その効果を最大限に活用する方法についてご紹介します。</p>
<h2>GitLabのカスタムコンプライアンスフレームワークとは？</h2>
<p>GitLabのカスタムコンプライアンスフレームワークを使うと、組織は自社のGitLabインスタンス内で、コンプライアンス基準を定義・実装・適用できます。この機能により、GitLabに元々備わっているコンプライアンス機能を拡張し、特定の規制要件や社内ポリシー、業界標準に合わせたカスタマイズ可能なフレームワークを作成できるようになります。</p>
<p>カスタムコンプライアンスフレームワークには、次のようなメリットがあります。</p>
<ul>
<li>手動での追跡作業にかかる手間を削減</li>
<li>監査対応の準備を加速</li>
<li>コンプライアンス制御をGitLab上でネイティブに適用</li>
</ul>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097114/Blog/Content%20Images/Blog/Content%20Images/image3_aHR0cHM6_1750097114254.png" alt="フレームワークが一覧表示されたコンプライアンスセンターのスクリーンショット"></p>
<p>今回のリリースでは、50個を超えるすぐに使える（OOTB）コントロールが提供されており（今後さらに追加予定）、医療分野のHIPAA、データプライバシーに関するGDPR（EU一般データ保護規則）、サービス組織向けのシステムおよび組織管理（SOC）2、その他業界固有の規制など、組織ごとのコンプライアンスのニーズに合わせて調整できます。OOTBコントロールの一例は以下のとおりです。</p>
<ul>
<li>職務分離（SoD、例：最低2名の承認者が必要、作成者によるマージリクエストの承認）</li>
<li>セキュリティスキャナの実行（例：SASTの実行、<a href="https://docs.gitlab.com/user/application_security/dependency_scanning/">依存関係スキャン</a>の実行）</li>
<li>認証/認可（例：プロジェクトの公開設定が非公開、AuthSSOが必須）</li>
<li>アプリケーション構成（例：ステータスチェックが必須、Terraformが必須）</li>
</ul>
<p>さらに、GitLab APIを使用して外部環境のコントロールを構成することもでき、外部環境のステータスや詳細を確認できます。</p>
<h2>ゼロからカスタムコンプライアンスフレームワークを作成する</h2>
<p>その価値を理解できたところで、次はGitLab環境でカスタムコンプライアンスフレームワークを実装する方法を見ていきましょう。デモアプリケーションを使って説明しますので、動画を見ながら一緒に進めてください。</p>
<p><strong>注：</strong> GitLab Ultimateのサブスクリプションが必要です。</p>
<p>&lt;!-- TODO: EMBED_YT_VIDEO --&gt;</p>
<p>&lt;!-- blank line --&gt;
&lt;figure class=&quot;video_container&quot;&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/bSwwv5XeMdQ?si=unDwCltF4vTHT4mB&quot; title=&quot;Adhering to compliance requirements with built-in compliance controls
&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt; &lt;/iframe&gt;
&lt;/figure&gt;
&lt;!-- blank line --&gt;</p>
<p><strong>ステップ1：コンプライアンス要件を定義する</strong></p>
<p>カスタムフレームワークを構築する前に、まずはコンプライアンス要件を明確に定義する必要があります。</p>
<ol>
<li><strong>適用される規制を特定する：</strong> 自社に適用される規制や標準（例：GDPR、PCI DSS、HIPAA）を確認します。</li>
<li><strong>各要件に対応するコントロールを割り当てる：</strong> 各規制を、具体的で実行可能なコントロールとして整理します。</li>
<li><strong>要件に優先順位を付ける：</strong> リスクの高い領域や、影響の大きい要件を優先します。</li>
</ol>
<p><strong>ステップ2：カスタムコンプライアンスフレームワークを作成する</strong></p>
<p>以下の手順でカスタムコンプライアンスフレームワークを作成できます。</p>
<ol>
<li>GitLabグループの<strong>セキュア  &gt; コンプライアンスセンター</strong>セクションに移動します。</li>
<li><strong>新しいフレームワーク</strong>ボタンを押します。</li>
<li><strong>空のフレームワークを作成</strong>を選択します。</li>
</ol>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097114/Blog/Content%20Images/Blog/Content%20Images/image7_aHR0cHM6_1750097114255.png" alt="カスタムコンプライアンスフレームワークの作成画面"></p>
<ol start="4">
<li>フレームワークの名前、説明、色を設定します。</li>
</ol>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097114/Blog/Content%20Images/Blog/Content%20Images/image6_aHR0cHM6_1750097114257.png" alt="「新しいコンプライアンスフレームワーク」の画面"></p>
<ol start="5">
<li>
<p>フレームワークに要件を追加します：
a. ページを下にスクロールして<strong>要件</strong>タブを開きます。</p>
<p>b. <strong>新しい要件</strong>ボタンをクリックします。</p>
<p>c. 名前と説明を入力します。
d. <strong>コントロール</strong>セクションで<strong>GitLab コントロールを選択</strong>をクリックします。<br>
e. 一覧からコントロールを選択します（例：少なくとも 2 つの承認、SAST の実行など）。
f.  <strong>要求事項を作成</strong>ボタンをクリックします。</p>
</li>
</ol>
<p>![「要求事項を作成」ボタン](// images.ctfassets.net/r9o86ar0p03f/7qHMBVfIF3YGxichlTbqmT/740ae34eb227c19cbeb35cd5667e31f7/image2.png)</p>
<ol start="6">
<li><strong>フレームワークを作成</strong>ボタンをクリックします。</li>
</ol>
<p>指定した内容でフレームワークが作成され、プロジェクトに追加できるようになります。また、適切なスキーマに準拠したJSONを使用して、コンプライアンスフレームワークを<a href="http://TODO">インポート</a>することも可能です。</p>
<p><strong>ステップ3：プロジェクトにフレームワークを適用する</strong></p>
<p>フレームワークを作成したら、以下の手順に従います。</p>
<ol>
<li>コンプライアンスセンターから<strong>プロジェクト</strong>タブを選択します。</li>
<li>検索バーを使って対象のプロジェクトを<strong>検索</strong>または<strong>絞り込み</strong>ます。</li>
<li>フレームワークを適用するプロジェクトを選択します。</li>
<li><strong>一括操作を選択</strong>ボタンをクリックします。</li>
<li><strong>選択したプロジェクトにフレームワークを適用する</strong>を選択します。</li>
<li><strong>フレームワークを選択</strong>ボタンをクリックします。</li>
<li>一覧から適用するフレームワークを選択します。</li>
<li><strong>適用</strong>ボタンをクリックします。</li>
</ol>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097114/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750097114258.png" alt="SOC 2フレームワークのドロップダウンが表示されたコンプライアンスセンターの画面"></p>
<p>適用されたフレームワークは、プロジェクト内で要求事項として可視化され、追跡できるようになります。</p>
<p><strong>ステップ4：コンプライアンスの状況をモニタリング・報告する</strong></p>
<p>フレームワークを設定したら、以下のことができるようになります。</p>
<ol>
<li>コンプライアンスセンターを使って、プロジェクト全体のコンプライアンス状況を管理する。不合格となったコントロールの詳細や、推奨される修正方法も確認できます。</li>
<li>監査や関係者によるレビューへ向けた、<strong>コンプライアンスレポート</strong>を生成する。</li>
<li><strong>コンプライアンスに関するアラート</strong>を設定し、潜在的な問題を関係者へ通知する。</li>
<li><strong>監査イベント</strong>で、コンプライアンス設定に対して行われた操作の概要を確認する。</li>
</ol>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097114/Blog/Content%20Images/Blog/Content%20Images/image5_aHR0cHM6_1750097114260.png" alt="SOC2テストフレームワークが表示されたコンプライアンスセンターの画面"></p>
<h2>実例：SOC2 コンプライアンスフレームワークの実装</h2>
<p>システムおよび組織管理（SOC）2、通称SOC2は、米国公認会計士協会（AICPA）によって策定された、厳格な監査基準です。SOC2は、サービス組織のセキュリティ、可用性、処理の完全性、機密性、プライバシーに関するコントロールを評価します。詳細については、<a href="https://about.gitlab.com/blog/guide-to-fulfilling-soc-2-security-requirements-with-gitlab/">GitLabでSOC 2のセキュリティ要件を満たすためのガイド</a>をご覧ください。</p>
<p>それでは、カスタムコンプライアンスフレームワークを使って SOC2 のセキュリティコンプライアンスを検証する実践的な例を見てみましょう。SOC2 のセキュリティ基準には以下が求められます。</p>
<ul>
<li>不正アクセスを防ぐためのコントロールの導入</li>
<li>リスクを特定し、軽減するための手順の確立</li>
<li>セキュリティインシデントの検出および対応のためのシステムの構築</li>
</ul>
<p><strong>免責事項：</strong> これはSOC2の要件に準拠するために利用可能な一部のコントロールを紹介する例です。本番環境に導入する前に、必ずセキュリティ/コンプライアンスチームと相談してください。</p>
<p>GitLabのOOTB（すぐに使える）コントロールを活用したSOC2用カスタムコンプライアンスフレームワークの例：</p>
<ul>
<li><strong>名前：</strong> SOC2セキュリティ要件</li>
<li><strong>説明：</strong> SOC2フレームワークに準拠するためのセキュリティ要件を追加します</li>
<li><strong>要件：</strong>
<ul>
<li><strong>不正アクセスを防ぐためのコントロールの導入</strong>
<ul>
<li>Auth SSOを有効化</li>
<li>CI/CDジョブトークンのスコープを有効化</li>
<li>組織レベルでMFA（多要素認証）を必須化</li>
</ul>
</li>
<li><strong>リスクを特定し、軽減するための手順の確立</strong>
<ul>
<li>少なくとも2つの承認</li>
<li>作成者によるマージリクエストの承認</li>
<li>コミッターによるマージリクエストの承認</li>
<li>デフォルトブランチの保護</li>
</ul>
</li>
<li><strong>セキュリティインシデントの検出および対応のためのシステムの構築</strong>
<ul>
<li>依存関係スキャンの実行</li>
<li>SASTの実行</li>
<li>DASTの実行</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>このフレームワークをプロジェクトに適用することで、コンプライアンスが崩れたタイミングや、再度準拠するために必要な対策を把握できるようになります。なお、1つのプロジェクトに対して複数のコンプライアンスフレームワークを作成・適用することも可能です。たとえば、SOC2のプロセス整合性要件専用のフレームワークを別途設けることもできます。</p>
<h2>コンプライアンス要件を満たすためにセキュリティポリシーを実装する</h2>
<p>必須ではありませんが、カスタムコンプライアンスフレームワークを含むプロジェクトにセキュリティポリシーを適用することができます。これにより、特定のコンプライアンス基準がセキュリティポリシーによって強制されることを保証できます。たとえば、セキュリティスキャンを求めるカスタムコンプライアンスフレームワークが適用されたプロジェクトに対して、セキュリティスキャナーの実行を強制できます。</p>
<p>GitLab では、以下のようなさまざまなセキュリティポリシーが提供されています。</p>
<ul>
<li><a href="https://docs.gitlab.com/user/application_security/policies/scan_execution_policies/">スキャン実行ポリシー</a>：パイプラインの一部または指定されたスケジュールでセキュリティスキャンを実行します。</li>
<li><a href="https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/">マージリクエスト承認ポリシー</a>：スキャン結果に基づいて、プロジェクトレベルの設定や承認ルールを強制します。</li>
<li><a href="https://docs.gitlab.com/user/application_security/policies/pipeline_execution_policies/">パイプライン実行ポリシー</a>：プロジェクトのパイプラインにおけるCI/CDジョブの実行を強制します。</li>
<li><a href="https://docs.gitlab.com/user/application_security/policies/vulnerability_management_policy/">脆弱性管理ポリシー</a>：デフォルトブランチで検出されなくなった脆弱性を自動的に解決します。</li>
</ul>
<p>ここでは、SASTスキャナーを実行することで、SASTスキャンを要求する要件への準拠を自動的に行う方法を紹介します。特定のフレームワークが適用されたプロジェクトに対してセキュリティポリシーを作成・適用するには、次の手順に従います。</p>
<ol>
<li><strong>SAST スキャン</strong>が求められるカスタムコンプライアンスフレームワークが適用されているプロジェクトに移動します。</li>
<li>サイドバーで、<strong>セキュア &gt; ポリシー</strong>の順に選択します。</li>
<li><strong>新しいポリシー</strong>ボタンをクリックします。</li>
<li><strong>スキャン実行ポリシー</strong>で、<strong>ポリシーを選択</strong>ボタンをクリックします。</li>
<li><strong>名前</strong>と<strong>説明</strong>を入力します。</li>
<li><strong>アクション</strong>で、実行するスキャンとして<strong>SAST</strong>を選択します。</li>
</ol>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097114/Blog/Content%20Images/Blog/Content%20Images/image4_aHR0cHM6_1750097114263.png" alt="「アクション」画面"></p>
<ol start="7">
<li><strong>条件</strong>で、すべてのブランチでパイプラインが実行されたときにトリガーされるように設定します。</li>
</ol>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097114/Blog/Content%20Images/Blog/Content%20Images/image8_aHR0cHM6_1750097114264.png" alt="「条件」画面"></p>
<ol start="8">
<li><strong>マージリクエスト経由で設定</strong> ボタンをクリックします。</li>
<li>この時点で、すべてのセキュリティポリシーが含まれた別プロジェクトでマージリクエスト（MR）が作成されます。</li>
<li><strong>マージ</strong>ボタンをクリックします。</li>
</ol>
<p>これで、すべてのブランチでSASTが実行されるようになり、その領域におけるコンプライアンスが保証されます。他にもさまざまな種類のセキュリティポリシーがありますので、要件に合うものを探してみてください。</p>
<h2>5つのベストプラクティス</h2>
<p>カスタムコンプライアンスフレームワークを最大限に活用するために、以下のベストプラクティスに従いましょう。</p>
<ol>
<li><strong>小さく始める：</strong> まずは、重要な規制や標準のうち1つから着手し、そこから範囲を広げていきましょう。</li>
<li><strong>関係者を巻き込む：</strong> フレームワークの作成には、コンプライアンスチーム、セキュリティチーム、デベロッパーチームを含めることが重要です。</li>
<li><strong>可能な限り自動化する：</strong> GitLab CI/CDを活用して、コンプライアンスチェックの自動化を図りましょう。</li>
<li><strong>しっかりと文書化する：</strong> フレームワークがどのように規制要件に対応しているか、明確に文書化しておきましょう。</li>
<li><strong>定期的に見直す：</strong> 規制の変更や新たな要件の発生に応じて、フレームワークを更新するようにしましょう。</li>
</ol>
<h2>無料トライアルで今すぐスタート！</h2>
<p>GitLabのカスタムコンプライアンスフレームワークは、コンプライアンスを開発ワークフローに直接組み込むことで、DevSecOpsにおける大きな進化をもたらします。カスタムフレームワークを導入することで、コンプライアンス業務の負担を軽減し、リスク管理を強化しながら、規制要件を満たしたまま開発サイクルを加速させることが可能になります。</p>
<p>カスタムコンプライアンスフレームワークを定義・適用できる機能により、チームは自社特有の規制状況に対応する柔軟性を得られる一方で、組織全体のコンプライアンスの慣習を一貫させるために必要な構造も得られます。</p>
<p>今後さらに規制要件が複雑化していく中で、カスタムコンプライアンスフレームワークのようなツールを活用して、コンプライアンスと開発速度のバランスを持続的に両立させることが、ますます重要になるでしょう。</p>
<blockquote>
<p>今すぐカスタムコンプライアンスフレームワークをお試しになりたい場合は、<a href="https://about.gitlab.com/ja-jp/free-trial/?hosted=saas">GitLab Ultimateの60日間無料トライアル</a>にぜひお申し込みください。</p>
</blockquote>
<h2>関連リンク</h2>
<p>以下のリソースで、カスタムコンプライアンスフレームワークの詳細や、そのメリットについてご覧いただけます。</p>
<ul>
<li><a href="https://docs.gitlab.com/user/compliance/compliance_center/compliance_status_report/">カスタムコンプライアンスフレームワークのドキュメント</a></li>
<li><a href="https://gitlab.com/groups/gitlab-org/-/epics/13295">カスタムコンプライアンスフレームワークに関するエピック</a></li>
<li><a href="https://docs.gitlab.com/user/application_security/policies/">セキュリティポリシーに関するドキュメント</a></li>
<li><a href="https://about.gitlab.com/ja-jp/solutions/security-compliance/">GitLabのセキュリティおよびコンプライアンスソリューション</a></li>
</ul>
]]></content>
        <author>
            <name>Fernando Diaz</name>
            <uri>https://about.gitlab.com/blog/authors/fernando-diaz</uri>
        </author>
        <published>2025-04-30T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab Duo + Amazon Q：アイデアを数分でコードに変換]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/gitlab-duo-amazon-q-transform-ideas-into-code-in-minutes/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-amazon-q-transform-ideas-into-code-in-minutes/"/>
        <updated>2025-04-28T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>複雑なイシューを動作するコードに変えるのに、何日も、あるいは何週間もかかった経験はありませんか？きっと誰もが一度は経験していることです。しっかりしたアイデアと明確な要件をもとに始めたはずなのに、そこからデプロイ可能なコードにたどり着くまでの道のりは、イライラするほど長く感じることがあります。実装の細かい部分に足を取られ、生産性が落ちてしまい、本来もっとスムーズに進むはずのプロジェクトが、なかなか進まなくなってしまうのです。</p>
<p>ここで力を発揮するのが、<a href="https://about.gitlab.com/ja-jp/topics/agentic-ai/">自律型AI</a>機能です。 <a href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-with-amazon-q-agentic-ai-optimized-for-aws/">GitLab Duo with Amazon Q</a>は、AIを搭載した包括的なDevSecOpsプラットフォームと、クラウドコンピューティングにおける豊富な機能を組み合わせたもので、アプリケーション開発のプロセスを、慣れ親しんだGitLabのワークフロー内で大幅に加速できるよう設計されています。この強力なインテグレーションはアイデア段階からデプロイまでの流れを効率化し、イシューの説明だけをもとに実装案を提案します。これまで数日かかっていた作業が、数分で完了するようになります。</p>
<h2>イシューが動作するコードへ変わる仕組み</h2>
<p>この自律型AI機能が実際にどう動くのか、流れを見てみましょう。あなたはデベロッパーとして、住宅ローン計算機アプリを作成するタスクを任されたとします。GitLab Duo with Amazon Qを使用して、以下の手順で作業を進めます。</p>
<ol>
<li>
<p>**詳細な要件を記載したイシューを作成する：**まず、通常の<a href="https://docs.gitlab.com/user/project/issues/">GitLabイシュー</a>を作成します。説明には、サービスが満たす必要がある要件をできるだけ詳細に記載します。これがソリューションの設計図となります。</p>
</li>
<li>
<p><strong>クイックアクションでAmazon Qを呼び出す：</strong> イシューを作成したら、コメント欄に「/q dev」というクイックアクションを追加するだけで、Amazon Qを呼び出すことができます。ここからがマジックの始まりです。</p>
</li>
<li>
<p>**AIが実装を生成する：**GitLab Duo with Amazon Qは、作成したイシューの説明文とソースコードのコンテキストを分析し、指定されたすべての要件を満たすコードを自律的に生成します。 さらに、生成されたコードはマージリクエストとして自動的にコミットされ、すぐにレビュー可能な状態になります。</p>
</li>
</ol>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097156/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097156018.png" alt="GitLab Duo  with Amazon Qのアクティビティポップアップのスクリーンショット"></p>
<ol start="4">
<li>
<p>**生成されたアプリケーションをレビューする：**マージリクエストに移動して、生成されたコードをレビューします。 すべての要件が満たされていることを確認し、必要に応じて調整を行います。</p>
</li>
<li>
<p>**提案されたアプリケーションをテストする：**最後に、アプリケーションが正常に動作することを確認します。 最小限の労力で、元の要件を実装した、動作するコードが完成します。</p>
</li>
</ol>
<h2>開発プロセスを変革</h2>
<p>GitLab Duo with Amazon Qは、インテリジェントな自動化によって複雑なデベロッパータスクにかかる時間を大幅に短縮し、このプロセス全体を根本から変革します。自律型AIアプローチを活用することで、アイデア段階からデプロイまでのプロセスを加速し、開発チームはより戦略的な業務に集中できるようになります。</p>
<p>GitLab DuoとAmazon Qを使用すれば、手動でコードを書く負担を減らしながら、より迅速かつ効率的にソフトウェアを開発できます。このインテグレーションによって、以下のようなメリットが得られます。</p>
<ul>
<li>要件に基づく自動実装で、<strong>貴重な開発時間を節約</strong></li>
<li>どのプロジェクトでも、コード生成の<strong>一貫性を維持</strong></li>
<li>要件を動作するコードに変換する際の<strong>認知負荷を軽減</strong></li>
<li>実装上のボトルネックを排除し、<strong>リリースサイクルを加速</strong></li>
<li>ボイラープレートコードの記述ではなく、レビューや最適化に<strong>専門知識を活用</strong></li>
</ul>
<p>GitLab Duo with Amazon Qの動作を実際にご覧になりますか？デモ動画で、開発ワークフローを変革する方法をご覧ください。</p>
<p>&lt;!-- blank line --&gt;
&lt;figure class=&quot;video_container&quot;&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/jxxzNst3jpo?si=j_LQdZhUnwqoQEst&quot; title=&quot;GitLab Duo with Amazon Q demo video for dev workflow&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt; &lt;/iframe&gt;
&lt;/figure&gt;
&lt;!-- blank line -&gt;</p>
<blockquote>
<p>GitLab Duo with Amazon Qの詳細については、<a href="https://about.gitlab.com/ja-jp/events/aws-summits/">お近くで開催されるAWSサミット</a>にご参加いただくか、<a href="https://about.gitlab.com/ja-jp/partners/technology-partners/aws/">GitLab担当者にお問い合わせ</a>ください。</p>
</blockquote>
<h2>GitLab Duo with Amazon Q関連リソース</h2>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/blog/gitlab-duo-with-amazon-q-agentic-ai-optimized-for-aws/">GitLab Duo with Amazon Q（AWS向けに最適化された自律型AI）の一般提供を開始</a></li>
<li><a href="https://about.gitlab.com/ja-jp/partners/technology-partners/aws/">GitLabとAWSのパートナーページ</a></li>
<li><a href="https://docs.gitlab.com/user/duo_amazon_q/">GitLab Duo with Amazon Qに関するドキュメント</a></li>
</ul>
]]></content>
        <author>
            <name>Cesar Saavedra</name>
            <uri>https://about.gitlab.com/blog/authors/cesar-saavedra</uri>
        </author>
        <published>2025-04-28T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[Kubernetes（K8s）とは？その仕組みから利点、使い方まで]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/"/>
        <updated>2025-04-28T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<h2>目次</h2>
<ol>
<li>Kubernetesとは？その読み方と用途</li>
<li>Kubernetes（K8s）の基本用語解説</li>
</ol>
<ul>
<li>コンテナ、Pod、Node、クラスター</li>
<li>Dockerとの違い</li>
</ul>
<ol start="3">
<li>Kubernetesの主な特徴</li>
</ol>
<ul>
<li>デプロイの自動化</li>
<li>ハイブリッド / マルチクラウドに対応</li>
<li>拡張性とプラグインアーキテクチャ</li>
<li>ローリングアップデートとロールバック</li>
<li>柔軟なスケーラビリティ</li>
<li>リリース後のアプリケーション監視</li>
</ul>
<ol start="4">
<li>Kubernetesの利点とは</li>
</ol>
<ul>
<li>生産性の向上</li>
<li>自己修復機能により障害に耐性</li>
<li>高い可用性を担保</li>
<li>オンプレミスでも、クラウドでも運用可能</li>
<li>大量のコンテナを一括管理</li>
<li>DevSecOpsとの親和性が高い</li>
<li>クラウドネイティブなワークロードを安全に保つ</li>
</ul>
<ol start="5">
<li>GitLabでKubernetesを統合する</li>
<li>Kubernetes（K8s）のよくある質問</li>
</ol>
<ul>
<li>KubernetesとDockerの違いは何ですか？</li>
<li>Kubernetesで何ができますか？</li>
<li>Kubernetesコンテナとは何ですか？</li>
<li>Kubernetesの読み方は？</li>
</ul>
<h2>Kubernetesとは？その読み方と用途</h2>
<p>Kubernetesは、「クバネティス」、「クーベネティス」、または「クーバネーティス」と発音します。ギリシャ語のκυβερνήτηςに由来し、「統治者」や「パイロット」といった意味を持ちます。また、K8sと表記されることもあります。</p>
<p>Kubernetesは、一言で表せばソフトウェア開発においてコンテナを操作・管理するもので、コンテナオーケストレーションの役割を果たすオープンソースソフトウェアとして開発されました。Kubernetesは、クラウドネイティブのプログラムの開発に使用します。これを使用することで<a href="https://about.gitlab.com/ja-jp/topics/microservices/">マイクロサービス</a>アーキテクチャが可能になり、プログラムの開発が高速化できます。<br>
では、Kubernetesについて、もう少し掘り下げて見ていきましょう。</p>
<h2>Kubernetes（K8s）の基本用語解説</h2>
<h3>コンテナ、Pod、Node、クラスター</h3>
<p>Kubernetesは、コンテナをオーケストレーションするためのツールです。オーケストレーションとは、複数のコンピュータシステムやアプリケーション、サービスなどを調整して管理し、頻繁に繰り返される大規模なワークフローやプロセスを実行できるようにすることを指します。では、コンテナとは何でしょう。ソフトウェア開発におけるコンテナ化とは、ソフトウェアのコードをライブラリやフレームワークなどの依存関係にあるすべてのコンポーネントとともにパッケージ化し、それぞれの入れ物、「コンテナ」に隔離することを意味します。コンテナは、完全に機能するポータブルなコンピューティング環境です。また、このコンテナを複数まとめたものがPod、PodをまとめたものがNode、Nodeをまとめたものがクラスタと呼ばれます（以下の図を参照）。</p>
<p><img src="https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687494/Blog/Content%20Images/kubernetes-diagram.svg" alt="kubernetesとは"></p>
<p><em>Kubernetesにおけるコンテナとクラスタの関係を示した図</em></p>
<h3>Dockerとの違い</h3>
<p>Kuberunetesはコンテナオーケストレーションツールですが、Dockerはコンテナ化ツールの1つです。Dockerはアプリケーションのコンテナ化を行なうとき使用するプラットフォームです。仮想マシンよりも軽量で高速であることや、環境構築が簡単なことから、コンテナ化の主流ツールになっています。</p>
<h2>Kubernetesの主な特徴</h2>
<p>Kubernetesは、前述したようにコンテナを管理するコンテナオーケストレーションツールで、代表的な機能としては次のようなものが挙げられます。</p>
<h3>デプロイの自動化</h3>
<p>Kubernetesは、アプリケーションのデプロイ時に、新しいコンテナの作成や既存コンテナの削除を自動で実施します。また、新しく作成したコンテナにも自動でリソースを適用します。</p>
<h3>ハイブリッド / マルチクラウドに対応</h3>
<p>クラウドプロバイダーに依存することなく、オンプレミス環境や様々なクラウドサービス（AWS、Azureなど）上で動作します。よって、ハイブリッドクラウドやマルチクラウド環境を簡単に構築、管理することができます。</p>
<h3>拡張性とプラグインアーキテクチャ</h3>
<p>多様なプラグインや拡張機能が利用できます。例えば、CustomResourceDefinitions（CRD）を使って新規にリソースタイプやロジックを追加したり、CNI（Container Network Interface）やCSI（Container Storage Interface）といったプラグインでネットワークやストレージのカスタマイズが可能です。</p>
<h3>ローリングアップデートとロールバック</h3>
<p>Kubernetesでは、アプリケーションのバージョンを更新する際、ローリングアップデートがそのデフォルトとなります。また、ビルトインでロールバック機構もあります。このため、ライブトラフィックに影響を与えず、ダウンタイムゼロでデプロイを実現できます。</p>
<h3>柔軟なスケーラビリティ</h3>
<p>Kubernetesは、大量のコンテナを効率的に管理するためのもので、システムのスケーラビリティが向上できます。スケーラビリティとは、どのくらいシステムの拡張ができるかを示す特性で、Kubernetesではコンテナ化されたアプリケーションの数を増減することでスケーリングします。</p>
<h3>リリース後のアプリケーション監視</h3>
<p>PrometheusやGrafanaといった監視ツールを使用することで、アプリケーション固有のメトリクスが監視できます。リリース後のパフォーマンス低下や不具合発見といった事象がアラートされるため、問題に迅速に対処できます。</p>
<h2>Kubernetesの利点とは</h2>
<p>Kubernetesには次のような7つのメリットがあります。</p>
<h3>生産性の向上</h3>
<p>一つ目のメリットは、アプリケーション開発で生産性が向上できる点にあります。従来の仮想化では、アプリケーションごとにゲストOSを用意する必要がありましたが、Kubernetesでは、アプリケーションを直接コンテナエンジン上にデプロイできるため、サーバーのリソース使用量が抑えられます。</p>
<h3>自己修復機能により障害に耐性</h3>
<p>Kubernetesには、PodやNodeに障害が起きた場合、最初の定義（マニフェスト）の状態まで自動修復する機能が備わっています。</p>
<h3>高い可用性を担保</h3>
<p>Kubernetesは、複数のNodeの集まりであるクラスターを構成します。あるクラスターで障害が発生した場合、障害が起きたコンテナを自動で再起動させます。また、他のNodeでコンテナを起動させ、処理を引き継ぐ動作も継続できるため、高い可用性が担保できます。</p>
<h3>オンプレミスでも、クラウドでも運用可能</h3>
<p>Kubernetesは、オンプレミスでも、プライベートクラウド、パブリッククラウドでも利用できます。つまり、自社サーバーでも、クラウドを使っても、どんな環境でも運用可能です。</p>
<h3>大量のコンテナの一括管理</h3>
<p>Kubernetesでは、大量のコンテナが一括で管理・運用できます。また、設定ファイルを複数のコンテナ間で共有することによって、設定変更時も正確かつ大量に設定を反映させることが可能です。</p>
<h3>DevSecOpsとの親和性が高い</h3>
<p>DevSecOpsとは、開発と運用を統合するDevOpsにセキュリティを加え、運用を視野に入れながら開発とセキュリティを同時に進め、安心・安全なソフトウェアを迅速にリリースするというコンセプトです。Kubernetesにはアプリケーションの開発と運用の双方に必要とされる機能が多く搭載されているため、DevSecOpsとの親和性が非常に高いという特長があります。</p>
<h3>クラウドネイティブなワークロードを安全に保つ</h3>
<p>Kubernetesは、クラウドネイティブアーキテクチャに基づいており、クラウドネイティブな情報セキュリティに関するベストプラクティスについて、CNCF（Cloud Native Computing Foundation）からのアドバイスを活用しています。</p>
<p>たとえばKubernetesには、APIやセキュリティコントロールが含まれており、情報セキュリティを管理するポリシーを定義する手段も備わっています。クラウドの利用などでセキュリティ面において懸念が生じても、Kubernetesならユーザーごとにアクセス制限を設定でき、不正アクセスが防止できるため安心です。</p>
<p>また、Pod Security Standardによりセキュリティに3つのポリシーが定義されています。非常に緩いものから非常に厳しいものまで累積的に定義できます。</p>
<h2>GitLabでKubernetesを統合する</h2>
<p>KubernetesクラスターとGitLabを接続すると、アプリの開発・デプロイ・管理・監視ができます。<br>
GitLabをKubernetesと連携させる、またはKubernetes内で動作させるには、3つの異なる方法があります。単独で使用することも、組み合わせて使用することもできます。</p>
<ul>
<li>GitLabからKubernetesにソフトウェアをデプロイする</li>
<li>Kubernetesを使用してGitLabインスタンスに紐づいたRunnerを管理する</li>
<li>GitLabのアプリケーションとサービスをKubernetesクラスター上で実行する</li>
</ul>
<p>さらに詳しい情報やお問い合わせは<a href="https://about.gitlab.com/ja-jp/solutions/kubernetes/">こちら</a>をご覧ください。</p>
<h2>Kubernetes （K8s）のよくある質問</h2>
<h3>KubernetesとDockerの違いは何ですか？</h3>
<p>Dockerはコンテナ化ツールのひとつで、アプリケーションコンテナを構築し、アプリケーションの開発・配布・実行をします。Kubernetesは、より大規模に複数のマイクロサービスを管理するのに使われます。<br>
また、Kubernetesはクラスターで実行され、Dockerはノードで実行されます。Kubernetesの使用目的はコンテナ管理ですが、Dockerの使用目的の一つは、アプリケーションをコンテナに分離することになります。</p>
<h3>Kubernetesで何ができますか？</h3>
<p>Kubernetesでできることの代表例には下記のようなものが挙げられます。</p>
<ul>
<li>大量のコンテナの一括管理</li>
<li>起動を含めた動作の高速化・軽量化</li>
<li>自動デプロイ</li>
<li>自己修復機能により障害に耐性</li>
<li>高い可用性を担保</li>
<li>オンプレミスでも、クラウドでも運用可能</li>
<li>DevSecOpsとの親和性が高い</li>
<li>クラウドネイティブなワークロードを安全に保つ</li>
</ul>
<h3>Kubernetesコンテナとは何ですか？</h3>
<p>ソフトウェアのコードをライブラリやフレームワークなどの依存関係にあるすべてのコンポーネントとともにパッケージ化し、それぞれの入れ物、「コンテナ」に隔離することをコンテナ化と言います。Kubernetesコンテナは、完全に機能するポータブルなコンピューティング環境で、さまざまなプラットフォームでデプロイ可能なプログラムとして<a href="https://about.gitlab.com/blog/what-are-the-benefits-of-a-microservices-architecture/">マイクロサービス</a>アーキテクチャを可能にします（リンクは英語版です）。</p>
<h3>Kubernetesの読み方は？</h3>
<p>Kubernetesは、「クバネティス」、「クーベネティス」、または「クーバネーティス」と読み、「K8s（ケーエイツ）」と略されます。</p>
]]></content>
        <author>
            <name>GitLab Japan Team</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab-japan team</uri>
        </author>
        <author>
            <name>GitLab</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab</uri>
        </author>
        <published>2025-04-28T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab入門：CI/CDについて理解する]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/getting-started-with-gitlab-understanding-ci-cd/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/getting-started-with-gitlab-understanding-ci-cd/"/>
        <updated>2025-04-25T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>すべてのコード変更が自動的にビルドおよびテストされ、そのうえでユーザーにデプロイされる。そんなワークフローを想像してみてください。それを可能にするのが、<a href="https://about.gitlab.com/ja-jp/topics/ci-cd/">継続的インテグレーション／継続的デリバリー（CI/CD）</a>です。CI/CDは、バグの早期発見、コード品質の確保、および迅速かつ頻繁なソフトウェアデリバリーの実現に役立ちます。</p>
<h3>CI/CDとは</h3>
<ul>
<li>**継続的インテグレーション（CI）**は、デベロッパーがコード変更を頻繁に（1日に数回が理想とされる）共有リポジトリに統合する開発手法です。各統合は自動化されたビルドとテストのプロセスによって検証されるため、早い段階で問題を検出できます。</li>
<li>**継続的デリバリー（CD）**はCIを拡張した開発手法で、リリースパイプラインを自動化することで、コードを<em>常に</em>デプロイ可能な状態に保ちます。アプリケーションをさまざまな環境（stagingステージ、本番環境など）に自動的に、またはワンクリックでデプロイできます。</li>
<li><strong>継続的デプロイ</strong>はさらにもう一歩踏み込み、本番環境に<em>成功したビルドをすべて</em>デプロイする手法です。継続的デプロイは、自動化されたテストとデプロイのプロセスに十分な信頼性がある場合にのみ、有効です。</li>
</ul>
<h3>GitLab CI/CDが選ばれる理由</h3>
<p>GitLab CI/CDは、GitLabに組み込まれた強力な統合システムです。これを利用することで、ソフトウェア開発ライフサイクル全体をシームレスに自動化できます。GitLab CI/CDによって、以下のことを実現できます。</p>
<ul>
<li><strong>あらゆるプロセスの自動化</strong>：アプリケーションのビルド、テスト、デプロイを簡単に行えます。</li>
<li><strong>バグの早期発見</strong>：問題が本番環境に到達する前に検出し、修正できます。</li>
<li><strong>フィードバックループの高速化</strong>：コード変更に関するフィードバックを即座に受け取れます。</li>
<li><strong>コラボレーションの向上</strong>：自動化されたワークフローによって、より効果的に共同作業を行えます。</li>
<li><strong>デリバリーの高速化</strong>：ソフトウェアをより迅速かつ頻繁にリリースできます。</li>
<li><strong>リスクの低減</strong>：デプロイ時のエラーやロールバックを最小限に抑えられます。</li>
</ul>
<h3>GitLab CI/CDの構成要素</h3>
<ul>
<li><code>.gitlab-ci.yml</code>：プロジェクトのルートディレクトリにある<a href="https://docs.gitlab.com/ee/ci/yaml/">YAMLファイル</a>です。ステージやジョブ、Runnerなど、CI/CDパイプラインの構成を定義します。</li>
<li><a href="https://docs.gitlab.com/runner/"><strong>GitLab Runner</strong></a>：任意のインフラストラクチャ（物理マシン、仮想マシン、Dockerコンテナ、Kubernetesクラスターなど）上でCI/CDジョブを実行するエージェントです。</li>
<li><a href="https://docs.gitlab.com/ee/ci/yaml/#stages"><strong>ステージ</strong></a>：ジョブ（ビルド、テスト、デプロイなど）の実行順序を定義します。</li>
<li><a href="https://docs.gitlab.com/ee/ci/yaml/#job-keywords"><strong>ジョブ</strong></a>：ステージ内の個々の作業単位（コードのコンパイル、テストの実行、stagingステージへのデプロイなど）を指します。</li>
</ul>
<h3>GitLab CIの設定</h3>
<p>GitLab CIは簡単に使い始められます。以下は<code>.gitlab-ci.yml</code>ファイルの基本的な設定例です。</p>
<pre><code class="language-yaml">
stages:
  - build
  - test
  - deploy

build_job:
  stage: build
  script:
    - echo &quot;アプリケーションをビルド中...&quot;

test_job:
  stage: test
  script:
    - echo &quot;テストを実行中...&quot;

deploy_job:
  stage: deploy
  script:
    - echo &quot;本番環境へデプロイ中...&quot;
  environment:
    name: production

</code></pre>
<p>この設定では、「build」「test」「deploy」の3つのステージを定義しています。それぞれのステージには、単純なスクリプトを実行するジョブが含まれています。</p>
<h3>CI/CDの設定例</h3>
<p>次に、より実践的な例をいくつか見てみましょう。</p>
<p><strong>Node.jsアプリケーションのビルドとデプロイ</strong></p>
<p>以下のパイプライン定義では、npmを使用してNode.jsアプリケーションのビルドおよびテストを行い、<a href="https://docs.gitlab.com/ci/examples/deployment/">dpl</a>を用いてアプリケーションをHerokuにデプロイする方法を説明しています。パイプラインのdeployステージでは、<a href="https://docs.gitlab.com/ci/variables/">GitLab CI/CD変数</a>を使用しています。デベロッパーは機密情報（認証情報など）をこの変数に格納して、CI/CDプロセスで安全に使用できます。この例では、Herokuにデプロイする際にdplツールが使用するAPIキーが、<code>$HEROKU_API_KEY</code>という名前の変数キーに格納されます。</p>
<pre><code class="language-yaml">
stages:
  - build
  - test
  - deploy

build:
  stage: build
  image: node:latest
  script:
    - npm install
    - npm run build

test:
  stage: test
  image: node:latest
  script:
    - npm run test

deploy:
  stage: deploy
  image: ruby:latest
  script:
    - gem install dpl
    - dpl --provider=heroku --app=$HEROKU_APP_NAME --api-key=$HEROKU_API_KEY

</code></pre>
<p><strong>異なる環境へのデプロイ（stagingステージや本番環境）</strong></p>
<p>GitLabではさらに、CI/CDを使用した<a href="https://docs.gitlab.com/ci/environments/">環境</a>という機能もご用意しています。この機能を使用すると、CI/CDから対象のインフラストラクチャへのデプロイを追跡できます。以下の例では、パイプラインにおいてstagingステージと本番環境の環境プロパティを持つステージが追加されます。deploy_stagingステージでは必ず指定したスクリプトが実行される一方、deploy_productionステージでは手動による承認が必要となります。これは誤って本番環境へのデプロイが行われるのを防ぐためです。</p>
<pre><code class="language-yaml">
stages:
  - build
  - test
  - deploy_staging
  - deploy_production

build:
  # ...

test:
  # ...

deploy_staging:
  stage: deploy_staging
  script:
    - echo &quot;stagingステージへのデプロイ中...&quot;
  environment:
    name: staging

deploy_production:
  stage: deploy_production
  script:
    - echo &quot;本番環境へのデプロイ中...&quot;
  environment:
    name: production
  when: manual  # 手動による承認が必要

</code></pre>
<h3>GitLab Auto DevOps</h3>
<p><a href="https://docs.gitlab.com/ee/topics/autodevops/">GitLab Auto DevOps</a>は、アプリケーションを自動的にビルド、テスト、デプロイするためのあらかじめ定義された設定を提供することで、CI/CDを簡素化します。ベストプラクティスと業界標準に基づいてワークフローを効率化する仕組みです。</p>
<p>Auto DevOpsを有効にする方法：</p>
<ol>
<li>プロジェクトの<strong>設定 &gt; CI/CD &gt; 一般パイプライン</strong>の順にアクセスします。</li>
<li><strong>Auto DevOps</strong>オプションを有効にします。</li>
</ol>
<p>Auto DevOpsを有効にすると、プロジェクトの言語とフレームワークが自動的に検出され、必要なビルド、テスト、デプロイのステージが設定されます。そのため、<code>.gitlab-ci.yml</code>ファイルを作成する必要すらありません。</p>
<h3>CI/CDカタログ</h3>
<p><a href="https://about.gitlab.com/blog/faq-gitlab-ci-cd-catalog/">CI/CDカタログ</a>には、CI/CDワークフローを拡張するために使用可能な、公開済みの<a href="https://docs.gitlab.com/ee/ci/components/">CI/CDコンポーネント</a>をまとめたプロジェクトが一覧で記載されています。誰でもコンポーネント用のプロジェクトを作成してCI/CDカタログに追加したり、既存プロジェクトへのコントリビュートを通じて公開コンポーネントを改善したりできます。これらのコンポーネントは、GitLab.comの<a href="https://gitlab.com/explore/catalog">CI/CDカタログ</a>に掲載されています。</p>
<blockquote>
<p><a href="https://about.gitlab.com/blog/tutorial-how-to-set-up-your-first-gitlab-ci-cd-component/">チュートリアル：初めてのGitLab CI/CDコンポーネントの設定方法</a></p>
</blockquote>
<h3>CIテンプレート</h3>
<p>さらに、独自の<a href="https://docs.gitlab.com/ee/ci/examples/">CIテンプレート</a>を作成して、複数のプロジェクトに対するCI/CDの設定を標準化し、再利用することもできます。これにより、一貫性が高まり、重複が生じにくくなります。</p>
<p>CIテンプレートの作成方法：</p>
<ol>
<li>専用のプロジェクトまたはリポジトリに<code>.gitlab-ci.yml</code>ファイルを作成します。</li>
<li>テンプレートでCI/CD設定を定義します。</li>
<li>プロジェクトの<code>.gitlab-ci.yml</code>ファイルで、<code>include</code>キーワードを使用してテンプレートをインクルードします。</li>
</ol>
<h2>開発ワークフローをレベルアップ</h2>
<p>GitLab CI/CDは、開発ワークフローに変革をもたらせる強力なツールです。CI/CDの概念を理解して、パイプラインを設定し、Auto DevOpsやCI/CDカタログ、CIテンプレートなどの機能を活用すれば、ソフトウェア開発ライフサイクル全体を自動化し、高品質なソフトウェアをより迅速かつ効率的に提供できます。</p>
<blockquote>
<p>さらに詳しく知りたい場合は、<a href="https://university.gitlab.com/">GitLab Universityのコースに登録</a>するか、<a href="https://about.gitlab.com/ja-jp/free-trial/">GitLab Ultimateの60日間無料トライアル</a>を今すぐお試しください。</p>
</blockquote>
<h2>「GitLab入門」シリーズ</h2>
<p>「GitLab入門」シリーズのその他の記事もぜひご覧ください。</p>
<ul>
<li><a href="https://about.gitlab.com/ja-jp/blog/getting-started-with-gitlab-how-to-manage-users/">ユーザーの管理方法</a></li>
<li><a href="https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab/">GitLabへのプロジェクトのインポート方法</a></li>
<li><a href="https://about.gitlab.com/blog/getting-started-with-gitlab-mastering-project-management/">プロジェクト管理を極める</a></li>
<li><a href="https://about.gitlab.com/blog/automating-agile-workflows-with-the-gitlab-triage-gem/">gitlab-triage gemを使ったアジャイルワークフローの自動化</a></li>
</ul>
]]></content>
        <author>
            <name>GitLab</name>
            <uri>https://about.gitlab.com/blog/authors/gitlab</uri>
        </author>
        <published>2025-04-25T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[GitLab 18.0における破壊的な変更に関するガイド]]></title>
        <id>https://about.gitlab.com/ja-jp/blog/a-guide-to-the-breaking-changes-in-gitlab-18-0/</id>
        <link href="https://about.gitlab.com/ja-jp/blog/a-guide-to-the-breaking-changes-in-gitlab-18-0/"/>
        <updated>2025-04-18T00:00:00.000Z</updated>
        <content type="html"><![CDATA[<p>次のメジャーリリースであるGitLab 18.0では、DevSecOpsによるイノベーションの限界を打ち破る新機能が多数提供されます。一方で、GitLabからいくつかの非推奨機能が削除される予定です。このページでは、予定されている破壊的な変更についてご留意いただきたい点と、その影響を軽減する方法をご紹介します。</p>
<h2>デプロイスケジュール</h2>
<h3>GitLab.com</h3>
<p>GitLab.comでは破壊的な変更が以下の3つの期間にのみデプロイされる予定です。</p>
<ul>
<li>2025年4月21～23日</li>
<li>2025年4月28～30日</li>
<li>2025年5月5～7日</li>
</ul>
<p>その他にも多くの変更が、今月いっぱい実装される予定です。各期間中にデプロイされる影響度の高い変更については、<a href="https://docs.gitlab.com/update/breaking_windows/">こちらの破壊的な変更に関するドキュメント</a>で詳細をご覧いただけます。</p>
<p><em><strong>注</strong>：例外的な状況が生じた場合は、破壊的な変更が上記の期間をわずかに前後する可能性があります。</em></p>
<h3>GitLab Self-Managed</h3>
<p>GitLab 18.0は5月15日から提供開始されます。リリーススケジュールの詳細については、<a href="https://about.gitlab.com/releases/">こちら</a>をご覧ください。</p>
<h3>GitLab Dedicated</h3>
<p>GitLab 18.0へのアップグレードは、2025年6月24日から29日までのメンテナンス期間中に行われます。詳細およびご自身の地域のメンテナンス期間については、<a href="https://docs.gitlab.com/administration/dedicated/maintenance/#release-rollout-schedule">こちら</a>をご覧ください。</p>
<p>また、18.0へのアップグレードに先立ち、導入される変更点がお客様の環境に及ぼす影響を評価し、必要な対応を計画する上で役立つカスタムツールとリソースをご用意しました。<a href="#tools-and-resources-to-manage-your-impact">影響を緩和するためのツールとリソースに関する情報はこちら</a>でご確認いただけます。</p>
<p>18.0で削除される予定の全項目の一覧については、<a href="https://docs.gitlab.com/ee/update/deprecations?removal_milestone=18.0">非推奨機能のページ</a>をご覧ください。今後の予定に加え、デプロイ方法に基づき今年予定されているリリースに向け準備する方法については、本ページでご紹介していますのでぜひ最後までお読みください。</p>
<h2>破壊的な変更</h2>
<h3>影響度：高</h3>
<p><strong>1. CI/CDジョブトークン - 「プロジェクトからのアクセスを制限」設定の削除</strong></p>
<p>GitLab.com | Self-Managed | Dedicated</p>
<p>GitLab 14.4ではセキュリティ強化の目的で、<strong><a href="https://docs.gitlab.com/ci/jobs/ci_job_token/#limit-your-projects-job-token-access">プロジェクトのCI/CDジョブトークン（CI_JOB_TOKEN）<em>からの</em>アクセスを制限</a><strong>する設定を追加しました。この設定は当初、<strong>CI_JOB_TOKENアクセスを制限</strong>という名前でしたが、よりわかりやすくするために、GitLab 16.3で</strong>このプロジェクト<em>からの</em>アクセスを制限</strong>という名称に変更されました。</p>
<p>GitLab 15.9では、**<a href="https://docs.gitlab.com/ci/jobs/ci_job_token/#add-a-group-or-project-to-the-job-token-allowlist">認証されたグループとプロジェクト</a>**という別の設定を新たに追加しました。この設定は、許可リストを使用してプロジェクトへのジョブトークンでのアクセスを制御します。新たに追加されたこの設定は、元の設定よりも大幅に改善されています。最初のイテレーションはGitLab 16.0で非推奨となっており、GitLab 18.0で削除される予定です。</p>
<p>すべての新規プロジェクトでは、<strong>このプロジェクト<em>からの</em>アクセスを制限</strong>設定はデフォルトで無効になります。GitLab 16.0以降のバージョンでは、この設定が無効になったプロジェクトで再度有効にすることはできません。代わりに、<strong>認証されたグループとプロジェクト</strong>設定を使用して、プロジェクトへのジョブトークンでのアクセスを制御してください。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#cicd-job-token---limit-access-from-your-project-setting-removal">非推奨通知</a></li>
<li><a href="https://gitlab.com/gitlab-com/support/toolbox/gitlab-detective/-/blob/main/README.md">GitLab Detectiveによる検証を実施可能</a></li>
</ul>
<p><strong>2. CI/CDジョブトークン - 認証されたグループとプロジェクトの許可リストの強制適用</strong></p>
<p>GitLab.com | Self-Managed | Dedicated</p>
<p>GitLab 15.9で**<a href="https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#add-a-group-or-project-to-the-job-token-allowlist">認証されたグループとプロジェクトの設定</a><strong>（GitLab 16.3で</strong>このプロジェクトへのアクセスを制限**に名称が変更）が導入されたことで、プロジェクトへのCI/CDジョブトークンでのアクセスを管理できるようになりました。<strong>このプロジェクトと許可リストに含まれるすべてのグループおよびプロジェクトのみ</strong>に設定されている場合、許可リストに追加されたグループまたはプロジェクトのみがジョブトークンを使用してプロジェクトにアクセスできます。</p>
<ul>
<li><strong>GitLab 15.9より前のバージョン</strong>では、デフォルトでは許可リストは無効になっており（<a href="https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#allow-any-project-to-access-your-project"><strong>すべてのグループとプロジェクト</strong></a>アクセス設定が選択されていた）、どのプロジェクトからもジョブトークンでアクセスできるようになっていました。</li>
<li><strong>GitLab 17.6以降のバージョン</strong>では、GitLab Self-ManagedおよびDedicatedインスタンスの管理者は、プロジェクトメンテナーが<strong>すべてのグループとプロジェクト</strong>を選べないように設定して、<a href="https://docs.gitlab.com/ee/administration/settings/continuous_integration.html#job-token-permissions"><strong>すべてのプロジェクトに対してより安全性の高い設定を強制</strong></a>できるようになりました。この変更により、プロジェクト間でのセキュリティレベルをさらに強化できます。</li>
<li>GitLab 18.0では、この設定がデフォルトで有効になります。GitLab.comでは、プロジェクトの認証ログに基づいて、プロジェクトの許可リストが自動的に作成されます。</li>
<li><strong>GitLab.com</strong>でのこの変更に備えて、クロスプロジェクトの認証にジョブトークンを使用しているプロジェクトメンテナーは、担当するプロジェクトにおいて<strong>認証されたグループとプロジェクト</strong>の許可リストを入力する必要があります。完了後、<strong>このプロジェクトと許可リストに含まれるすべてのグループとプロジェクトのみ</strong>に設定を変更してください。GitLab 18.0より前のバージョンのプロジェクトの<a href="https://docs.gitlab.com/ci/jobs/ci_job_token/#job-token-authentication-log">認証ログ</a>に基づき許可リストの作成を<em><strong>自動化</strong></em>するには、ご用意している<a href="https://docs.gitlab.com/ci/jobs/ci_job_token/#auto-populate-a-projects-allowlist">移行ツール</a>のご利用をおすすめします。</li>
<li><strong>Self-Managedユーザー</strong>は18.0へのアップグレードを完了する前に、許可リストの入力を完了する必要があります。</li>
<li><strong>Dedicatedユーザー</strong>は、お客様固有のインスタンスに適した計画を立ててください。GitLabアカウントチームがお手伝いいたします。</li>
</ul>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#cicd-job-token---authorized-groups-and-projects-allowlist-enforcement">非推奨通知</a></li>
<li><a href="https://docs.gitlab.com/ci/jobs/ci_job_token/#add-a-gr">ドキュメント</a></li>
<li><a href="https://gitlab.com/gitlab-com/support/toolbox/gitlab-detective/-/blob/main/README.md">GitLab Detectiveによる検証を実施可能</a></li>
</ul>
<p><strong>3. 依存プロキシへのトークンスコープの強制適用</strong></p>
<p>GitLab.com | Self-Managed | Dedicated</p>
<p>コンテナの依存プロキシは、<strong>パーソナルやプロジェクト、グループ</strong>アクセストークンを用いた**<code>docker login</code><strong>および</strong><code>docker pull</code>**リクエストを受け取った場合、そのスコープを検証せずにリクエストを受け入れます。</p>
<p>GitLab 18.0では、依存プロキシでの認証の際に**<code>read_registry</code><strong>および</strong><code>write_registry</code>**スコープが必要となります。この変更の適用後に、これらのスコープを持たないトークンによる認証リクエストが行われた場合、<strong>拒否</strong>されます。</p>
<p>そのため、アップグレードする前に、<a href="https://docs.gitlab.com/ee/user/packages/dependency_proxy/#authenticate-with-the-dependency-proxy-for-container-images"><strong>必要なスコープ</strong></a>を持つアクセストークンを新たに作成し、作成したトークンを使用してワークフローの変数とスクリプトを更新してください。</p>
<p>また、<a href="https://gitlab.com/gitlab-com/cs-tools/gitlab-cs-tools/dependancy-token-checker/"><strong>Dependency Token Checker</strong></a>をご利用いただくことも可能です。コミュニティが開発したスクリプトで、トークンの表示および自動でのローテーションを行えます。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#dependency-proxy-token-scope-enforcement">非推奨通知</a></li>
</ul>
<h3>影響度：中</h3>
<p><strong>1. GitLab.comでの脆弱性に関する新しいデータ保持制限</strong></p>
<p>GitLab.com - <strong>Ultimateプランのお客様のみ</strong></p>
<p>GitLab 18.1から、システムのパフォーマンスと信頼性の向上の目的で、GitLab.comで<strong>Ultimate</strong>プランをご利用のお客様を対象に、6か月間にわたり段階的に<strong>新しいデータ保持制限</strong>を導入します。データ保持制限は、脆弱性データの保存期間に影響します。</p>
<p>12か月以上前に検出されたもので更新されていない脆弱性は、自動的にコールドストレージアーカイブに移動されます。コールドストレージアーカイブのデータに関する詳細は以下のとおりです。</p>
<ul>
<li>GitLab UIからアクセスおよびダウンロード可能</li>
<li>3年間保持される</li>
<li>3年後に完全に削除される</li>
</ul>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#new-data-retention-limits-for-vulnerabilities-on-gitlabcom">非推奨通知</a></li>
<li><a href="https://handbook.gitlab.com/handbook/security/records-retention-deletion/">ドキュメント</a></li>
</ul>
<p><strong>2. <code>allowed_pull_policies</code>にないコンテナイメージのプルポリシーを拒否</strong></p>
<p>GitLab.com | Self-Managed | Dedicated</p>
<p>設定済みのプルポリシーはすべて、Runnerの**<code>config.toml</code><strong>ファイル内の<a href="https://docs.gitlab.com/runner/executors/docker/#allow-docker-pull-policies"><strong>allowed_pull_policies設定</strong></a>に含まれていなければなりません。含まれていない場合、</strong><code>incompatible pull policy</code>**エラーにより、ジョブの実行が失敗します。</p>
<p>現在の実装では、複数のプルポリシーが定義されている場合、少なくとも1つのプルポリシーが**<code>allowed-pull-policies</code>**の設定内容と一致すれば、ほかのポリシーが含まれていなくても、ジョブの実行は成功します。</p>
<p>GitLab 18.0では、**<code>allowed-pull-policies</code><strong>に含まれるプルポリシーと一致するものがない場合にのみ、ジョブが失敗します。ただし、これまでの動作とは異なり、</strong><code>allowed-pull-policies</code>**に含まれるプルポリシーだけをジョブが使用するようになります。この違いにより、現在成功しているジョブがGitLab 18.0では失敗する可能性があります。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#reject-container-image-pull-policies-not-in-allowed_pull_policies">非推奨通知</a></li>
<li><a href="https://docs.gitlab.com/runner/executors/docker/#allow-docker-pull-policies">ドキュメント</a></li>
</ul>
<p><strong>3. PostgreSQL 14と15がサポート対象外に</strong></p>
<p>Self-Managed</p>
<p>GitLabは、<a href="https://handbook.gitlab.com/handbook/engineering/infrastructure-platforms/data-access/database-framework/postgresql-upgrade-cadence/"><strong>PostgreSQLの年間アップグレードスケジュール</strong></a>に従っています。</p>
<p>そのため、GitLab 18.0でPostgreSQL 14と15はサポート対象外となる予定です。GitLab 18.0で必要となるPostgreSQLの最小バージョンは、PostgreSQL 16です。</p>
<p>PostgreSQL 14と15は、GitLab 17の全リリースサイクルでサポートされます。PostgreSQL 16は、GitLab 18.0より前のバージョンにアップグレードしたインスタンスでもサポートされます。</p>
<p>この変更に備えて、<a href="https://docs.gitlab.com/administration/postgresql/replication_and_failover/"><strong>PostgreSQLクラスター</strong></a>を使用していないインスタンス（Omnibus Linuxパッケージがインストールされた単一のPostgreSQLインスタンスを実行中の場合など）では、GitLab 17.11へのアップグレード時にPostgreSQLをバージョン16に自動的にアップグレードしようと試行します。<a href="https://docs.gitlab.com/administration/postgresql/replication_and_failover/"><strong>PostgreSQLクラスター</strong></a>を使用している場合、または<a href="https://docs.gitlab.com/omnibus/settings/database/#opt-out-of-automatic-postgresql-upgrades"><strong>このような自動アップグレードを希望しない</strong></a>場合、GitLab 18.0にアップグレードするには、事前に<a href="https://docs.gitlab.com/omnibus/settings/database/#upgrade-packaged-postgresql-server"><strong>PostgreSQL 16に手動でアップグレード</strong></a>する必要があります。その際、アップグレードを行えるように十分なディスク容量があることを確認してください。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#postgresql-14-and-15-no-longer-supported">非推奨通知</a></li>
<li><a href="https://docs.gitlab.com/omnibus/settings/database/#upgrade-packaged-postgresql-server">ドキュメント</a></li>
<li><a href="https://docs.gitlab.com/omnibus/development/managing-postgresql-versions/">移行に関するガイドライン</a></li>
</ul>
<p><strong>4. Terraform CI/CDテンプレートの非推奨化</strong></p>
<p>Self-Managed</p>
<p>Terraform CI/CDテンプレートは非推奨化されており、GitLab 18.0で削除される予定です。影響を受けるテンプレートは以下のとおりです。</p>
<ul>
<li><code>Terraform.gitlab-ci.yml</code></li>
<li><code>Terraform.latest.gitlab-ci.yml</code></li>
<li><code>Terraform/Base.gitlab-ci.yml</code></li>
<li><code>Terraform/Base.latest.gitlab-ci.yml</code></li>
</ul>
<p>これにより、GitLabはジョブイメージの**<code>terraform</code>**バイナリをBSLライセンスのもとで提供されているバージョンに更新することができなくなります。</p>
<p>引き続きTerraformを使用するには、テンプレートと<a href="https://gitlab.com/gitlab-org/terraform-images"><strong>Terraformイメージ</strong></a>を複製し、適宜保持してください。カスタムビルドイメージへの<a href="https://gitlab.com/gitlab-org/terraform-images"><strong>移行手順の詳細についてはこちら</strong></a>でご確認いただけます。</p>
<p><strong>また、代替案として、GitLab.comで新しいOpenTofu CI/CDコンポーネントの使用、またはGitLab Self-Managedで新しいOpenTofu CI/CDテンプレートの使用をおすすめします。</strong> CI/CDコンポーネントはGitLab Self-Managedではまだ利用できませんが、<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/415638"><strong>イシュー#415638</strong></a>において、この機能の追加が提案されています。GitLab Self-ManagedでCI/CDコンポーネントが利用可能になると、OpenTofu CI/CDテンプレートは削除される予定です。</p>
<p>新しい<a href="https://gitlab.com/components/opentofu">OpenTofu CI/CDコンポーネントの詳細についてはこちら</a>をお読みください。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#deprecate-terraform-cicd-templates">非推奨通知</a></li>
</ul>
<p><strong>5. Prometheusサブチャートのメジャーアップデート</strong></p>
<p>Self-Managed</p>
<p>GitLab 18.0とGitLabチャート9.0で、Prometheusサブチャートのバージョンが15.3から27.3にアップデートされます。</p>
<p>このアップデートに伴い、デフォルトではPrometheus 3が付属するようになります。</p>
<p>アップグレードを実行するには、手動での設定が必要です。Alertmanager、Node Exporter、Pushgatewayのいずれかが有効になっている場合は、Helm値も更新する必要があります。</p>
<p>詳細については、<a href="https://docs.gitlab.com/charts/releases/9_0/#prometheus-upgrade"><strong>移行ガイド</strong></a>を参照してください。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#major-update-of-the-prometheus-subchart">非推奨通知</a></li>
</ul>
<h3>影響度：低</h3>
<p><strong>1. SUSE Linux Enterprise Server 15 SP2パッケージのビルド終了</strong></p>
<p>Self-Managed</p>
<p>SUSE Linux Enterprise Server (SLES) 15 SP2の長期サービスおよびサポート（LTSS）の提供は、2024年12月に終了しました。</p>
<p>これに伴い、Linuxパッケージインストール用のSLES SP2の配布を終了します。引き続きサポートをご利用いただくには、SLES 15 SP6にアップグレードする必要があります。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#support-for-suse-linux-enterprise-server-15-sp2">非推奨通知</a></li>
</ul>
<p><strong>2. Gitalyレートリミッターの削除</strong></p>
<p>Self-Managed</p>
<p>以前、Gitalyでは<a href="https://gitlab.com/gitlab-org/gitaly/-/blob/4b7ea24f6172a03e7989879200b47b6fd0e2d059/doc/backpressure.md#L55-55"><strong>RPCベースのレート制限</strong></a>がサポートされていました。この機能では期待する結果が得られなかったため、GitLabでは非推奨となります。詳細については、非推奨化に関するイシューをご覧ください。</p>
<p>（非推奨となる）レートリミッターを設定している場合は、エラーは返されず、単に設定が無視されます。</p>
<p>代わりに、<a href="https://docs.gitlab.com/administration/gitaly/concurrency_limiting/"><strong>並行処理リミッター</strong></a>のご利用をおすすめします。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#gitaly-rate-limiting">非推奨通知</a></li>
</ul>
<p><strong>3. NGINXコントローラーイメージ1.3.1のサポートの非推奨化</strong></p>
<p>Self-Managed</p>
<p>デフォルトのNGINXコントローラーイメージが1.11.2に更新されます。新しいバージョンでは、新たなRBACルールが必要となります。ユーザーによっては、独自のRBACルールを管理するために<strong>nginx-ingress.rbac.create: false</strong>を設定しています。</p>
<p>これらのユーザーは、1.11.2以降のバージョンに移行する前に、RBACルールを追加する必要があります。そのため、このHelm値が上記のように設定されている場合にのみ、1.3.1をデプロイするフォールバックメカニズムを実装しました。また、<strong>nginx-ingress.controller.image.disableFallback</strong>も追加しました。デフォルトではfalseに設定されています。独自のRBACを管理しているユーザーは、新しいRBACルールが適用されていることを確認してから、この値をtrueに設定することで、デプロイ環境で1.11.2も使用できるようになります。</p>
<p>なお、バージョン17.5では、1.3.1のイメージのサポートとフォールバックメカニズムを非推奨とする予定です。これにより、1.3.1のサポートが完全に終了となり、多数のセキュリティ上のメリットを得られる1.11.2のみを使用できるようになります。</p>
<p><a href="https://docs.gitlab.com/update/deprecations/#fallback-support-for-gitlab-nginx-chart-controller-image-v131">非推奨通知</a></p>
<p><strong>4. アプリケーションセキュリティテストアナライザーのメジャーバージョンをアップデート</strong></p>
<p>GitLab.com | Self-Managed | Dedicated</p>
<p>GitLab 18.0のリリースに合わせて、アプリケーションセキュリティテストステージで使用されるアナライザーのバージョンが大幅に更新されます。</p>
<p>デフォルトで含まれているテンプレートを使用していない場合、または利用するアナライザーのバージョンを固定している場合は、CI/CDジョブの定義を更新して、固定したバージョンを削除するか、最新のメジャーバージョンに更新する必要があります。</p>
<p>GitLab 17.0～17.11をお使いの場合は、GitLab 18.0のリリースまで、通常どおりアナライザーのアップデートをご利用いただけます。GitLab 18.0以降のバージョンでは、新たに修正されたバグや機能はすべて、新しいメジャーバージョンのアナライザーでのみリリースされます。</p>
<p>GitLabのメンテナンスポリシーに基づき、バグ修正や新機能を非推奨バージョンに実装することはありません。セキュリティパッチは、必要に応じて最新の3つのマイナーリリースにバックポートされます。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#application-security-testing-analyzers-major-version-update">非推奨通知</a></li>
</ul>
<p><strong>5. API Discoveryにおいてデフォルトでブランチパイプラインを利用するように</strong></p>
<p>GitLab.com | Self-Managed | Dedicated</p>
<p>GitLab 18.0では、API DiscoveryのCI/CDテンプレート（<strong>API-Discovery.gitlab-ci.yml</strong>）のデフォルトの動作が更新されます。</p>
<p>このテンプレートはGitLab 18.0より前のバージョンでは、MRが開いているときに、デフォルトで<a href="https://docs.gitlab.com/ci/pipelines/merge_request_pipelines/"><strong>マージリクエストパイプライン</strong></a>を実行するように設定されていました。</p>
<p>GitLab 18.0からは、ほかのASTスキャナーの<a href="https://docs.gitlab.com/user/application_security/detect/roll_out_security_scanning/#template-editions"><strong>Stableテンプレートエディション</strong></a>の動作に合わせて、このテンプレートの動作を変更します。</p>
<ul>
<li>デフォルトでは、本テンプレートはブランチパイプラインでスキャンジョブを実行するようになります。</li>
<li>CI/CD変数の<strong>AST_ENABLE_MR_PIPELINES: true</strong>を設定すると、MRが開いているときに代わりにMRパイプラインを使用できます。この新しい変数の実装状況は、<a href="https://gitlab.com/gitlab-org/gitlab/-/issues/410880"><strong>イシュー#410880</strong></a>で追跡されています。</li>
</ul>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#api-discovery-will-use-branch-pipelines-by-default">非推奨通知</a></li>
</ul>
<p><strong>6. DASTのDAST_DEVTOOLS_API_TIMEOUTのデフォルト値を低めに変更予定</strong></p>
<p>GitLab.com | Self-Managed | Dedicated</p>
<p><strong>DAST_DEVTOOLS_API_TIMEOUT</strong>は、DASTスキャンがブラウザからの応答を待つ時間を指定する環境変数です。GitLab 18.0より前のバージョンでは、この変数の値は45秒に固定されていました。GitLab 18.0から、<strong>DAST_DEVTOOLS_API_TIMEOUT</strong>環境変数に動的な値が設定されます。この値は、他のタイムアウト設定をもとに算出されます。</p>
<p>多くの場合、45秒という値は多くのスキャナー機能のタイムアウト値よりも高いものでした。動的に値を算出することで、__DAST_DEVTOOLS_API_TIMEOUT__変数をよりさまざまな状況で適用できるようになり、使いやすくなります。</p>
<ul>
<li><a href="https://docs.gitlab.com/update/deprecations/#dast-dast_devtools_api_timeout-will-have-a-lower-default-value">非推奨通知</a></li>
</ul>
<h2>影響を制御するためのツールとリソース</h2>
<p>予定されている変更点がご利用のGitLabインスタンスに及ぼす影響を把握できるように専用ツールを開発しました。GitLab 18.0にスムーズに移行できるように、ご自身にどのような影響があるかを見極めてから、ドキュメントに記載されている影響を軽減するためのステップをご確認いただくことをおすすめします。</p>
<ul>
<li><a href="https://gitlab.com/gitlab-com/cs-tools/gitlab-cs-tools/deprecation-migration-tools/advanced-search-deprecations">非推奨機能の高度な検索</a>：このツールはGitLabのAdvanced Search APIを使って、GitLabのグループやプロジェクト全体で、非推奨に関連する文字列を検索します。手動でチェックすべきファイルがあれば、それも報告します。<em><strong>注</strong>：誤検出が生じる可能性もあります。</em></li>
<li><a href="https://gitlab.com/security-products/tooling/build-support-detection-helper">依存関係スキャンビルドサポート検出ヘルパー</a>：このツールは、依存関係スキャンの3つの非推奨事項（<a href="https://docs.gitlab.com/update/deprecations/#dependency-scanning-for-javascript-vendored-libraries">1</a>、<a href="https://docs.gitlab.com/update/deprecations/#dependency-scanning-upgrades-to-the-gitlab-sbom-vulnerability-scanner">2</a>、および<a href="https://docs.gitlab.com/update/deprecations/#resolve-a-vulnerability-for-dependency-scanning-on-yarn-projects">3</a>。すべて19.0に延期）の影響を受けるプロジェクトを特定します。APIを使用して、関連するファイルとCIジョブ名をスキャンします。</li>
<li><a href="https://gitlab.com/gitlab-com/support/toolbox/gitlab-detective/-/blob/main/README.md">GitLab Detective</a>（Self-Managedでのみ利用可能）：実験的なツールで、インストールされているGitLabに既知の問題がないか自動的にチェックします。設定ファイルやデータベースの値を調べて、複雑な確認作業を行います。<strong>注</strong>：必ずGitLabノード上で直接実行してください。</li>
</ul>
<p>また、GitLab Universityでは、これらの変更点に備え、計画および影響を緩和するための対応を行う上で役立つミニコース（15分以内）を公開しました。<a href="https://university.gitlab.com/catalog?query=18.0">ぜひこちらから学習を開始してください</a>。</p>
<p>有料プランをご利用の方で、ご紹介した変更点についてご質問がある場合や、サポートをお求めの場合は、GitLabサポートポータルで<a href="https://about.gitlab.com/support/portal/">サポートチケットを作成</a>してください。</p>
<p><a href="https://about.gitlab.com/support/statement-of-support/#free-users">Gitlab.comのFreeプランをご利用</a>の場合は、<a href="https://docs.gitlab.com/">GitLabドキュメント</a>や<a href="https://forum.gitlab.com/">GitLabコミュニティフォーラム</a>、<a href="http://stackoverflow.com/questions/tagged/gitlab">Stack Overflow</a>などのコミュニティソースを通じて追加サポートを受けられます。</p>
]]></content>
        <author>
            <name>Martin Brümmer</name>
            <uri>https://about.gitlab.com/blog/authors/martin-brümmer</uri>
        </author>
        <author>
            <name>Fabian Zimmer</name>
            <uri>https://about.gitlab.com/blog/authors/fabian-zimmer</uri>
        </author>
        <author>
            <name>Sam Wiskow</name>
            <uri>https://about.gitlab.com/blog/authors/sam-wiskow</uri>
        </author>
        <published>2025-04-18T00:00:00.000Z</published>
    </entry>
</feed>