|
学生時代にPythonを使って開発していたとき、プライベートで集中管理されたストレージが必要だと気づきました。バイナリファイルやテキストデータファイル、そしてPythonパッケージを保存できるストレージです。その答えは、オープンソースのセルフホスト型ソフトウェアリポジトリマネージャーであるArtipieでした。 大学時代、同僚と私は実験測定から得た大量のデータを扱っていました。私はPythonを使ってデータを処理し、可視化していました。当時の同僚たちは数学者で、ソフトウェア開発の経験はありませんでした。彼らはたいていデータやコードをフラッシュドライブやメールで渡すだけでした。私は彼らにGitのようなバージョン管理システムを紹介しようとしましたが、うまくいきませんでした。 PythonリポジトリArtipieはPyPIリポジトリをサポートし、twineおよびpipと互換性があります。つまり、PyPIリポジトリやTestPyPIリポジトリにパッケージをインストールまたは配布するのと同じように、Artipie Pythonリポジトリを使用できます。 独自のPythonリポジトリを作成するには、Artipieがホストするインスタンス「Artipie Central」を利用できます。ログインすると、リポジトリの一覧ページ(最初は空です)と新しいリポジトリを追加するためのフォームが表示されます。新しいリポジトリの名前(例: 次に、YAML 形式でリポジトリ設定を表示するページが表示されます。 ---- 設定内の このリポジトリが存在し、動作していることを確認するには、ブラウザでインデックスページを開いてください。パッケージの一覧が表示されます。新しいリポジトリを作成したばかりで、まだパッケージをアップロードしていない場合は、リポジトリのインデックスページは空白になります。 バイナリリポジトリArtipieにはあらゆる種類のファイルを保存できます。保存タイプは ---- これらの設定は基本的にPythonと同じです。リポジトリの種類のみが異なります。この例では、バイナリリポジトリは 6 他の2つのファイルは形式が同じです(番号のみ異なります)。これらのファイルをご自身で確認するには、ブラウザでリンク1、2、3を開いてファイルをダウンロードするか、 httpie -a https://central.artipie.com/olenagerasimova/data/y1.dat > ./data/y1.daこれらのファイルは、PUT リクエストを使用して Artipie Central の httpie -a olenagerasimova:*** PUT このバイナリ リポジトリの API は非常にシンプル (HTTP PythonプロジェクトPythonプロジェクトのサンプルソースコードは、私のGitHubリポジトリから入手できます。この例の主なアイデアは、Artipie Centralから3つのデータファイルをダウンロードし、数値を配列に読み込み、それらの配列を使ってグラフをプロットすることです。pip $ python3 -m pip インストール--index -url \ パッケージを Artipie Central リポジトリに公開するには、 コマンドライン Artipie Centralで Artipieをコンテナとして実行するArtipie をコンテナとしてセットアップするのは、Podman や Docker をインストールするのと同じくらい簡単です。すでにどちらかがインストールされている場合は、ターミナルを開いてください。 $ podman run -it -p 8080 :8080 -p 8086 :8086 artipie/artipie:latest これにより、最新バージョンのArtipieを実行する新しいコンテナが起動します。また、2つのポートがマッピングされます。リポジトリはポート8080で提供されます。ArtipieのREST APIとSwaggerドキュメントはポート8086で提供されます。新しいイメージはデフォルト設定を生成し、実行中のリポジトリのリスト、テスト証明書、Swaggerドキュメントへのリンクをコンソールに出力します。 Artipie Rest API を使用して既存のリポジトリを表示することもできます。
Swaggerドキュメントページの画像、 [ デフォルト設定にはPythonリポジトリが含まれていません。Swaggerインターフェースから {すべてのJSONフィールドは、ダッシュボードでYAMLリポジトリを作成するときと同じです。リポジトリタイプは リポジトリが作成されていることを確認するために、 [ 複数のリポジトリを備えた独自のArtipieインストールを作成しました!Artipieミラーは、個人のパソコンでも、プライベートネットワーク内のリモートサーバーでも実行できます。企業、グループ、大学内でソフトウェアパッケージを交換するのにも使えます。これは、独自のソフトウェアサービスを構築する簡単な方法であり、Pythonだけに限定されません。Artipieを実際に試してみて、その可能性を確かめてみてください。 |
Artipie: Python用のオープンソースリポジトリマネージャー
関連するおすすめ記事
-
CDC リアルタイム データ同期に基づくいくつかのオープン ソース コンポーネントにより、データ同期をよりリアルタイムに行うことができます。
-
仮想化の次のステップ: Red Hat の OpenShift 仮想化プラットフォームはこの問題をどのように解決するのでしょうか?
-
relation-graph: Web アプリケーションにリレーション グラフ コンポーネントを埋め込むための優れたオープン ソース ライブラリ。
-
Kubernetes アプリケーションにおけるセキュリティリスクと保護推奨事項トップ 10
-
AppFlowy: Notionのオープンソース代替
-
Permify: 推奨オープンソースライセンスサービスおよびポリシーエンジン