Linux で PicoShare を使用して大きなファイルをオンラインでホストおよび共有する方法
Picoshare は、軽量でアクセスしやすい Linux 用のファイル共有 Web アプリです。自分のサーバーからファイルをアップロードして共有できる、使いやすいインターフェイスを提供します。この記事では、Picoshare をインストールし、Ubuntu Linux で Docker を使用してオンラインでファイルを共有する方法を説明します。
オンラインでファイルを共有するのにPicoshareを使用する理由
PicoShare の最大のセールスポイントの 1 つは、Linux ベースのプラットフォームに簡単にデプロイできることです。Docker を使用すると、Linux の依存関係やプログラムの互換性を気にすることなく、PicoShare でファイルをオンラインで共有できます。
PicoShare のもう 1 つのセールス ポイントは、プラットフォームにアップロードしたファイルを操作しないことです。これにより、アップロード時にサーバーがメディアを再エンコードしないことが保証されるため、写真やビデオを共有するのに便利です。
最後に、PicoShare には、ファイル ストレージを外部オブジェクト ストレージ ソリューションに複製する機能があります。たとえば、Amazon S3 互換バケットを PicoShare サーバーにリンクし、サーバーのコンテンツの 1:1 バックアップを作成できます。これにより、あるシステムから別のシステムに移行するときにデータを簡単に復元できます。
PicoShareの前提条件のインストール
前提:このチュートリアルは、少なくとも 2 GB の RAM と 50 GB のディスク容量を備えた Ubuntu 24.04 マシンで実行されます。そのドメインの「A」レコードを作成できるドメイン名が必要です。最後に、この記事では、S3 互換のオブジェクト ストレージ バックエンドとして DigitalOcean Spaces を使用します。
PicoShare をインストールする最初のステップは、ホスト システム用の Docker と Nginx の両方を入手することです (他の Linux ディストリビューションの場合は、Linux システムに Docker をインストールする方法は次のとおりです)。まず、Docker プロジェクトのリポジトリの署名キーを取得します。
お気に入りのテキスト エディターを使用して、新しい apt リポジトリ ファイルを作成します。
新しいリポジトリ ファイル内に次のコード行を貼り付けます。
リポジトリ ファイルを保存し、システムのリポジトリ リストと現在のパッケージの両方を更新します。
Ubuntu で apt を使用して Docker、Docker Compose、Nginx をインストールします。
PicoShare のクラウド ストレージ バックアップの作成
S3 互換のクラウド ストレージ プロバイダーに移動し、新しいストレージ バケットを作成します。この場合、DigitalOcean Spaces を使用しているため、ダッシュボード画面で[作成] -> [Spaces オブジェクト ストレージ]をクリックします。
S3 互換ストレージのデータセンターの場所を選択し、「CDN を有効にする」チェックボックスをオンにします。
新しい Spaces バケットの名前を指定し、「Spaces バケットの作成」をクリックして初期化します。
[Origin Endpoint] テキスト ボックスのコピー アイコンをクリックし、別のテキスト ファイルに貼り付けます。
DigitalOcean ダッシュボードの左側のサイドバーをスクロールし、APIカテゴリをクリックします。
[Spaces キー]タブをクリックし、[新しいキーの生成]を選択します。
新しいキーの名前を指定して、「アクセス キーの作成」をクリックします。
ページから「アクセス キー」と「シークレット キー」の両方をコピーし、テキスト ファイルに貼り付けます。
PicoShareのインストールと実行
ユーザーのホーム ディレクトリ内に PicoShare 用の新しいフォルダーを作成し、そのフォルダー内に移動します。
お気に入りのテキスト エディターを使用して、PicoShare の Compose ファイルを作成します。
新しい .yml ファイル内に次のコード ブロックを貼り付けます。
「PS_SHARED_SECRET」変数の値を、十分に長くランダムなパスワードに置き換えます。これは、PicoShare の Web インターフェイスのパスワードとして機能します。
「LITESTREAM_BUCKET」変数の値を、Spaces バケットの名前に変更します。
エンドポイントのリージョンとドメイン名の部分をコピーし、「LITESTREAM_ENDPOINT」変数の値として貼り付けます。
「LITESTREAM_ACCESS_KEY_ID」変数と「LITESTREAM_SECRET_ACCESS_KEY_ID」変数の両方の値を、DigitalOcean Spaces バケットのアクセス キーとシークレット キーに置き換えます。
docker-compose.yml ファイルを保存し、次のコマンドを実行して PicoShare インスタンスをビルドして実行します。
SSLリバースプロキシによるPicoShareのセキュリティ保護
この時点で、PicoShare はローカル マシンのポート 4001 で実行されています。インターネット上で安全にアクセスするには、すべての接続が SSL 経由で暗号化されていることを確認する必要があります。
まず、ドメイン名に PicoShare サーバーの IPv4 アドレスを指す新しい「A」レコードを作成します。私の場合は、「picoshare」という値を持つ「A」レコードを作成します。
Ubuntu システムに「core」スナップ パッケージをインストールします。
Electronic Frontier Foundation (EFF) から certbot snap パッケージを取得します。
お気に入りのテキスト エディターを使用して、新しい Nginx サイト構成ファイルを作成します。
次のコード ブロックをサイト構成ファイル内に貼り付けます。
サイト設定ファイルを保存し、「/etc/nginx/sites-available/」ディレクトリから「/etc/nginx/sites-enabled/」フォルダへのシンボリック リンクを作成します。
Nginx 設定ファイルにエラーがないか再度確認し、次のコマンドを使用して Nginx Web サーバー デーモンを起動しますsystemctl
。
EFF の certbot ユーティリティを使用して PicoShare サーバーを登録します。
サーバーのドメイン名を指す新しい SSL 証明書を生成します。
PicoShareのテストと最初のファイルのアップロード
Web ブラウザを開き、サブドメインに移動して PicoShare ランディング ページを読み込みます。
ページの右上隅にある「ログイン」ボタンをクリックします。
「パスフレーズ」テキストボックスに「PS_SHARED_SECRET」の値を入力し、「認証」をクリックしてログインします。
「アップロード」ボタンをクリックして PicoShare サーバーにデータを保存できるかどうかを確認し、ピッカー メニューからサンプル ファイルを選択します。
ファイルを共有したいユーザーにサーバーから返される最初のリンクをコピーします。
PicoShareで一時的なゲストアップロードを有効にする
ユーザーが送信したアップロードのほかに、匿名ユーザーがサーバーに単一のファイルをアップロードできるようにする一時リンクを作成することもできます。これは、ファイルを共有する必要があるが、通常のクラウド サービスにファイルをアップロードできない人がいる場合に役立ちます。
まず、PicoShare のホームページでゲスト リンクカテゴリをクリックします。
空のリンク概要テーブルのすぐ上にある[新規作成]ボタンをクリックします。
ゲストアップロードリンクの基本的な詳細を入力します。私の場合は、「MakeTechEasier」というラベルを付け、有効期限を「なし」に設定し、ファイルサイズの制限を 100 MB、全体のアップロード制限を 10 件に設定します。
「作成」をクリックして、PicoShare インスタンスの一時的なゲスト リンクを生成します。
ゲスト リンクの右側にあるコピー アイコンをクリックし、クリップボードの内容を対象の受信者に送信します。
Linux を使用してオンラインでファイルを共有するために PicoShare を導入し、保護することは、オンラインでのデジタル プライバシーを取り戻すための第一歩にすぎません。SimpleLogin を使用して独自の電子メール エイリアス サーバーをホストすることで、さらに保護を強化する方法を学びます。
画像クレジット: Alejandro Escamilla (UnsplashおよびPicoShare Github経由)。すべての変更とスクリーンショットは Ramces Red によるものです。
コメントを残す