产生此想法的考量:
- 我使用zerotier内网穿透,每一个WSL2都需要单独的添加进内网中,这很不优雅
- 每一个WSL2都需要单独的分配ssh端口,这很不优雅
- 每次损坏WSL2都需要完全重新安装,这也很不优雅
由此,我萌生出使用distrobox的想法,因为网上教程足够的多,支持的系统也多(后期我可能会考虑incus)
感谢Ivon大佬的教程
1. 安装distrobox
默认使用的是Docker作为后端
sudo apt install distrobox
当然如果你想,也能够使用Podman作为后端
curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/extras/install-podman | sh -s -- --prefix ~/.local
curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sh -s -- --next --prefix ~/.local
之后添加~/.bashrc or ~/.zshrc
# Podman和Distrobox的路径
PATH=$PATH:$HOME/.local/podman/bin:$HOME/.local/bin
# 允许应用程序显示在屏幕上(需安装xhost)
xhost +si:localuser:$USER
2. 创建一个distrobox
distrobox create
不加任何参数,默认安装一个最新的fedora
创建一个debian12的distrobox
distrobox create --name debian12 --image debian:12
英伟达显卡驱动
distrobox create --name debian12 --image debian:12 --nvidia
# 或者使用Nvidia Container Toolkit
distrobox create --name debian12 --additional-flags "--runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=all" --image debian:12
自定义安装路径
distrobox create --name debian12 --image debian:12 --home ~/distrobox/debian12
设置root权限
distrobox create --name debian12 --image debian:12 --root
添加环境变量
distrobox create --name debian12 --image debian:12 --additional-flags "--env EDITOR=vim"
设定预先要安装的套件
distrobox create --name debian12 --image debian:12 --additional-packages "git tmux vim"
外挂docker volume
distrobox create --name debian12 --image debian:12 --volume /opt/my-dir:/usr/local/my-dir:rw
3. distrobox相关
# 启动
distrobox enter debian12
# 重启
distrobox restart debian12
# 停止
distrobox stop debian12
# 删除
distrobox rm debian12
标签:name,--,create,配置,Distrobox,distrobox,debian12,WSL2,image
From: https://www.cnblogs.com/moguw/p/18173255