Repolode
gomods

gomods/athens

Goの依存関係をキャッシュするための、Go modulesダウンロードプロトコルに対応したオープンソースのセルフホスト型プロキシ兼データストアです。

スター
4,820
フォーク
553
未解決の Issue
122
最終コミット
5 日前

これは何?

AthensはGo modulesダウンロードプロトコルに対応したGo moduleプロキシです。goコマンドは上流のソースから直接ではなく、Athens経由で依存関係を取得できます。また、データストアとしてモジュールのバージョンを保存するため、元のソースが利用できなくなってもビルドを続けられます。

Athensはさまざまな環境に合わせて設定できます。クラウドのblobストレージサービス、MongoDB、コンテンツ配信ネットワーク(CDN)、共有ディスク、インメモリストレージなど、複数のストレージバックエンドに対応しています。チームでAthensサーバーを運用し、各自のローカルGo環境からそのサーバーを利用することもできます。

このプロジェクトはGoで書かれており、ライセンスはMITです。ドキュメントサイトでは、インストール方法、ストレージの設定、プロキシの設計について説明しています。

主な機能

  • 01Go modulesダウンロードプロトコルに対応しており、goコマンドからmoduleプロキシとして利用できます。
  • 02クラウドのblobストレージ、MongoDB、共有ディスク、メモリなど、さまざまなバックエンドにモジュールのバージョンを保存できます。
  • 03CDNの背後に配置して、モジュールのダウンロードを配信できます。
  • 04モジュールのコピーを保持し、元のソースが利用できなくなってもビルドを続けられます。

ユースケース

  • チームや企業で共有のmoduleプロキシを運用し、Goのビルドを高速化する。
  • Goの依存関係をキャッシュし、上流のソースが利用できないときもビルドを継続する。
  • 社内のGo開発環境で利用できるモジュールのバージョンを管理する。

クイックスタート

  1. 1

    Athens プロキシをデプロイするには、docs.gomods.io のインストールガイドを確認してください

  2. 2

    DEVELOPMENT.md に従って開発環境をセットアップしてください

使う前に知っておきたいこと

  • README にはワンコマンドでのインストール方法が記載されていないため、セットアップには外部ドキュメントに従う必要があります。
  • セルフホストするには、プロキシ用のストレージバックエンドを設定する必要があります。

トピック

よくある質問

athens とは?
Goの依存関係をキャッシュするための、Go modulesダウンロードプロトコルに対応したオープンソースのセルフホスト型プロキシ兼データストアです。 AthensはGo modulesダウンロードプロトコルに対応したGo moduleプロキシです。goコマンドは上流のソースから直接ではなく、Athens経由で依存関係を取得できます。また、データストアとしてモジュールのバージョンを保存するため、元のソースが利用できなくなってもビルドを続けられます。
athens は無料で使えますか?ライセンスは?
athens は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
athens は今もメンテナンスされていますか?
活発にメンテナンス中。athens の最終コミットは 2026年11月2日 です。
athens は何に使えますか?
チームや企業で共有のmoduleプロキシを運用し、Goのビルドを高速化する。 Goの依存関係をキャッシュし、上流のソースが利用できないときもビルドを継続する。 社内のGo開発環境で利用できるモジュールのバージョンを管理する。
athens のインストール方法は?
Athens プロキシをデプロイするには、docs.gomods.io のインストールガイドを確認してください DEVELOPMENT.md に従って開発環境をセットアップしてください
athens はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/gomods/athens

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト