|
学生時代に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用のオープンソースリポジトリマネージャー
関連するおすすめ記事
-
知識のギャップを埋めましょう: これらの人気のあるオープンソース プロジェクトについてご存知ですか?
-
DSQ: Excel、JSON、CSV などの形式をサポートする多目的な SQL ローカル ファイル分析ツール。
-
Microsoft: 私たちは Linux のオープンソース化に非常に熱心に取り組んでいます。
-
さらに高度なオープンソースのコマンドラインツール10個
-
Polar Signals は、コードを最適化し、クラウド課金を削減するために Parca をオープンソース化しました。
-
D-Wave は、量子物理学の知識がなくてもプログラミングを可能にするオープンソースの量子プログラミング ソフトウェアです。