Vyline DOCS

Linux

在 64 位 Linux 主机上安装 Docker Engine 和 Docker Compose,然后启动 Vyline。

前提

Vyline 发布 linux/amd64linux/arm64 container image。只要 Docker Engine 和 Compose v2 正常,Vyline 本身的启动步骤在不同发行版上相同。

uname -m
docker version
docker compose version

安装 Docker

环境Docker 来源服务管理
Debian / UbuntuDocker 官方 APT repositorysystemd
Fedora / RHEL / CentOS 系Docker 官方 RPM repositorysystemd
Arch Linux发行版 packagesystemd
openSUSE发行版 packagesystemd
Alpine Linuxapk packageOpenRC
NAS / appliance使用产品自身的 container 功能产品特定

下面分别给出 Docker Engine、Buildx 和 Compose v2 的安装方法。主机已经在运行 Docker 时,不要删除已有 data-root 或 package;先确认 docker versiondocker compose version

启动 Vyline

docker version
docker compose version
docker run --rm hello-world
mkdir -p ~/vyline && cd ~/vyline
curl -LO https://raw.githubusercontent.com/tqmane/vyline/main/docker-compose.yml
docker compose pull
docker compose up -d

Debian / Ubuntu

注册 Docker CE 的 APT repository。Ubuntu 与 Debian 的 repository URL 和 codename 获取方式稍有不同,因此从 /etc/os-release 判断。

. /etc/os-release
case "$ID" in
  ubuntu) DOCKER_DISTRO=ubuntu; DOCKER_SUITE="${UBUNTU_CODENAME:-$VERSION_CODENAME}" ;;
  debian) DOCKER_DISTRO=debian; DOCKER_SUITE="$VERSION_CODENAME" ;;
  *) echo "This procedure supports Ubuntu/Debian: $ID"; exit 1 ;;
esac

sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL "https://download.docker.com/linux/$DOCKER_DISTRO/gpg" \
  -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

printf 'Types: deb\nURIs: https://download.docker.com/linux/%s\nSuites: %s\nComponents: stable\nArchitectures: %s\nSigned-By: /etc/apt/keyrings/docker.asc\n' \
  "$DOCKER_DISTRO" "$DOCKER_SUITE" "$(dpkg --print-architecture)" \
  | sudo tee /etc/apt/sources.list.d/docker.sources >/dev/null

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker run --rm hello-world
sudo docker compose version

Ubuntu/Debian 派生发行版可能使用不同 codename 或 repository 兼容规则。如果系统不匹配上面的 ID,不要强行注册 Ubuntu/Debian repository,应使用该发行版自身的 Docker package 指南。

Fedora / RHEL / CentOS Stream / Rocky / Alma

Fedora

当前 Fedora 的 Docker repository 可用 dnf config-manager addrepo --from-repofile 注册。

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager addrepo --from-repofile https://download.docker.com/linux/fedora/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker run --rm hello-world
sudo docker compose version

RHEL

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker run --rm hello-world
sudo docker compose version

CentOS Stream

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker run --rm hello-world
sudo docker compose version

Rocky Linux / AlmaLinux

它们与 Docker 直接验证的 RHEL 本身是不同发行版。先确认操作系统/厂商的 container 方针;如果选择 Docker CE,请使用与对应 RHEL 兼容 release 相符的 repository,并在安装后实际运行 container 验证。

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker run --rm hello-world
sudo docker compose version

安装过程中不要关闭 SELinux。只有出现 deny 时,再检查 audit log 和 volume label。

Arch Linux 系

sudo pacman -Syu docker docker-compose
sudo systemctl enable --now docker
sudo docker run --rm hello-world
sudo docker compose version

Arch rolling update 可能同时更新 kernel、containerd 与 runc。较大升级后检查 systemctl status dockerdocker info 与 Vyline health。

openSUSE

sudo zypper install docker docker-compose
sudo systemctl enable --now docker
sudo docker run --rm hello-world
sudo docker compose version

不同 release 提供的 Compose package 名称和版本可能不同。如果 docker compose version 不可用,请用 zypper search docker-compose 查找当前 repository 中的 Compose v2 package。

Alpine Linux

dockerdocker-cli-compose 从 community repository 安装。如果 community 未启用,先启用当前 release 同一 branch 的 community repository。

sudo apk add docker docker-cli-compose
sudo rc-update add docker default
sudo service docker start
sudo docker run --rm hello-world
sudo docker compose version
rc-status

Vyline 的 Bun runtime 已包含在 container image 中。Host 侧只需满足 Docker daemon 与 kernel 要求。

Firewall / SELinux / AppArmor

Rootless Docker

仓库没有 rootless Docker 专用配置或验证。本 Docs 以普通 Docker Engine 为前提。若使用 rootless,请另外确认 bind mount ownership、port publish 与 daemon 自动启动。

按页面、设置或命令搜索