Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
Distroboxのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Distrobox
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:仮想化]] [[Category:サンドボックス]] [[en:Distrobox]] Distrobox は、ホストとの緊密な統合を提供しながら、ホストと異なる Linux のコンテナ化されたバージョンをインストールし、あるディストリビューションで設計されたバイナリを別のディストリビューションで実行することを可能にするコンテナのラッピングレイヤーです。 Distrobox 自体はコンテナマネージャーではなく、[[Podman]] または [[Docker]] に依存してコンテナを作成します。 Distrobox のドキュメントから: :ターミナル内の任意の Linux ディストリビューションを使用してください。ソフトウェアのバックワードおよびフォワード互換性を有効にし、好きなディストリビューションを自由に使用することができます。Distrobox は、選択した Linux ディストリビューションを使用して、podman または docker を使用してコンテナを作成します。作成されたコンテナは、ホストと緊密に統合され、ユーザーの HOME ディレクトリ、外部ストレージ、外部 USB デバイス、グラフィカルアプリ (X11/Wayland)、およびオーディオの共有が可能になります。 == セキュリティへの影響 == Distrobox の主な目的は、ホストからコンテナをサンドボックス化することに焦点を当てていない(プロジェクトの緊密な統合の性質上、これは不可能)ため、Distrobox 内で実行されるコンテナは、ホームフォルダーおよび他のいくつかの場所にフルアクセスします。 サンドボックス化された運用モードは現在計画段階にあり、進行状況は[https://github.com/89luca89/distrobox/issues/28 こちら]でトラッキングできます。 デフォルトで Docker はコンテナを root として実行し、rootful コンテナは'''ホストのファイルシステムに無制限のアクセスを持つ'''ため、Docker よりも Podman を使用することを推奨します。Rootless Docker は現在動作していないが、作業中です。 == インストール == === ルートアクセス権を持つ場合 === まず、[[Podman]] または [[Docker]] の'''いずれか'''の ページに従い、Hello World コンテナをインストールして実行できることを確認してください。 [[Pacman#パッケージのインストール|パッケージをインストール]]するには、{{pkg|distrobox}} または {{aur|distrobox-git}} のいずれかを選択してください。 === ルートアクセス権がない場合/イミュータブルなファイルシステムの場合 === 以下の両方を実行して、[[CURL]] を使用して、ホームフォルダに Distrobox と Podman をインストールします。 {{ic|Distrobox}} $ curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sh -s -- --prefix ~/.local {{ic|Podman}} $ curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/extras/install-podman | sh -s -- --prefix ~/.local 以下の場所を {{ic|$PATH}} に追加します。[[環境変数#ユーザー毎|ユーザーごとの環境変数]]を設定します: $HOME/.local/bin $HOME/.local/podman/bin コンテナ内でグラフィカルアプリケーションの実行に問題がある場合は、{{pkg|xorg-xhost}} をインストールし、以下を {{ic|~/.bashrc}} 、{{ic|~/.profile}} 、または {{ic|~/.xinitrc}} に追加する必要があります: xhost +si:localuser:$USER ==== アンインストール ==== Distrobox は、ルートレスインストールのためのアンインストールスクリプトを提供しています。実行するには、以下を実行します。 $ curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/uninstall | sh -s -- --prefix ~/.local {{Note| このスクリプトはルートレスでインストールした場合にのみ必要です。[[Pacman]] を介してインストールした場合は、通常通り[[アンインストール]]を行ってください。}} == 使用方法 == {{Note| * 以下のセクションで、{{ic|''name''}} は変数で、何でもよいです。すべての場合で {{ic|''name''}} を選んだ実際の名前に置き換えてください。 * 任意のサブカテゴリでサポートされているオプションの完全なリストについては、{{ic|''--help''}} を使用してください。たとえば、すべての作成オプションを表示するには、{{ic|distrobox create --help}} を使用します。 * サポートされているディストリビューションの完全なリストとそれらのイメージ名は、https://distrobox.privatedns.org/compatibility/#containers-distros で見つけることができます。 * より高度な使用方法については、https://distrobox.privatedns.org/usage/usage にある Distrobox のドキュメントページを参照してください。}} 新しいコンテナを作成するには、以下を実行します。 $ distrobox create -n ''name'' インストールされたコンテナをリスト表示するには、以下を実行します。 $ distrobox list インストールされたコンテナとやり取りするには、以下を実行します。 $ distrobox enter ''name'' または、コンテナに直接コマンドを送信することもできます。 $ distrobox enter ''name'' -- ''command-to-execute'' 実行中のコンテナを停止するには、以下を実行します。 $ distrobox stop ''name'' コンテナを削除するには、以下を実行します。 $ distrobox rm ''name'' 特定のディストリビューションをコンテナにインストールするには、以下を実行します(この例では Ubuntu です)。 $ distrobox create --image ubuntu:22.04 インストールは以下のように完全にカスタマイズできます(この例では、ルートアクセスを持つ Gentoo を実行する ''test'' という名前のコンテナです)。 $ distrobox create -i docker.io/gentoo/stage3:latest -n test --root コンテナがホストにルートアクセスを持つ必要がある場合、{{ic|''sudo distrobox''}} よりも {{ic|''--root''}} フラグを使用することをお勧めします。 === 非共有モード === Distrobox では、ユーザーがファイルシステム上の特定の場所を {{ic|unshare}} できるようになりました。デフォルトモードでは、{{ic|devsysfs}}、{{ic|ipc}}、{{ic|netns}}、{{ic|process}}、{{ic|$HOME}} の共有が作成されます。および {{ic|Application access}} 新しいコンテナを作成するときに、以下にリストされているコマンドを使用して、それらの一部を {{ic|unshare}} することを選択できるようになりました。 {| class="wikitable" |+ Shares |- ! シェア !! コマンド !! 用途 |- | devsysfs || {{ic|--unshare-devsysfs}} || ホストデバイスとホストの sysfs ディレクトリを共有しない |- | ipc || {{ic|--unshare-ipc}} || ipc 名前空間をホストと共有しない |- | netns || {{ic|--unshare-netns}} || ネットワーク名前空間をホストと共有しない |- | process || {{ic|--unshare-process}} || プロセス名前空間をホストと共有しない |- | All || {{ic|--unshare-all}} || すべての {{ic|unshare}} フラグをアクティブにします |- |} {{ic|$HOME}} と {{ic|Application access}} の共有を解除することはできません。これらは必須であり、これらがなければ Distrobox は動作できません。 {{warning|この機能はデフォルトのコンテナよりもセキュリティが向上していますが、アプリケーション開発者によっては依然として '''完全なサンドボックスではない''' と考えられています。}} == 設定 == Distrobox は、設定ファイルを使用するか、[[環境変数]]を使用することで、2つの方法で設定することができます。 === 設定ファイル === Distrobox は、以下の場所で設定ファイルを確認します。重要度が最も低いものから最も高いものへ: * /usr/share/distrobox/distrobox.conf * /usr/etc/distrobox/distrobox.conf * /etc/distrobox/distrobox.conf * ${HOME}/.config/distrobox/distrobox.conf * ${HOME}/.distroboxrc 設定ファイルの例は以下の通りです: container_always_pull="1" container_generate_entry=0 container_manager="docker" container_image_default="registry.opensuse.org/opensuse/toolbox:latest" container_name_default="test-name-1" container_user_custom_home="$HOME/.local/share/container-home-test" container_init_hook="~/.local/distrobox/a_custom_default_init_hook.sh" container_pre_init_hook="~/a_custom_default_pre_init_hook.sh" non_interactive="1" skip_workdir="0" === 環境変数 === 以下の変数が利用可能で、[[環境変数#ユーザーごと|ユーザーごとの環境変数]]を使用して設定する必要があります: DBX_CONTAINER_ALWAYS_PULL DBX_CONTAINER_CUSTOM_HOME DBX_CONTAINER_IMAGE DBX_CONTAINER_MANAGER DBX_CONTAINER_NAME DBX_CONTAINER_ENTRY DBX_NON_INTERACTIVE DBX_SKIP_WORKDIR == 参照 == * [https://github.com/89luca89/distrobox/ プロジェクトの Github ページ] * [https://distrobox.privatedns.org/ プロジェクトのドキュメントページ]
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Aur
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:META Box
(
ソースを閲覧
)
テンプレート:META Box Blue
(
ソースを閲覧
)
テンプレート:META Box Red
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:Warning
(
ソースを閲覧
)
Distrobox
に戻る。
検索
検索
Distroboxのソースを表示
話題を追加