目标服务器在内网/隔离环境,无法直接访问 Docker Hub,或者直连拉取极慢。手边有一台 Mac(有梯子,直连 Docker Hub 很快),于是用它把 Jitsi Meet 的四个核心镜像拉下来,打包成一个 .tar,传到服务器再 docker load 进去。
核心思路:能联网的机器拉镜像 → 打包成单文件 → 拷贝到目标机器 → 导入。这是 Docker 离线迁移镜像的标准套路,适用于任何镜像,不限于 Jitsi。
| 项 | 要求 |
|---|---|
| Mac 端 | 已装 Docker Desktop,能 docker pull 访问 Docker Hub(梯子已开) |
| 服务器端 | 已装 Docker,且架构与 Mac 拉取的镜像一致(见下方架构一致性问题) |
| 网络 | Mac 能 SSH/scp 到目标服务器 |
| 磁盘空间 | 镜像四个加起来约 1~2 GB,打包后差不多大小;两端都要留足空间 |
镜像带架构信息(linux/amd64、linux/arm64)。Mac 拉什么架构取决于你 pull 时所在的 Docker 环境,不是 Mac 本机的 CPU。
arm64,Intel Mac 默认拉 amd64。--platform,否则拉到 arm64 镜像传过去跑不起来。验证方法(拉取后立刻确认):
docker inspect jitsi/web:stable-11031 --format '{{.Architecture}}'
# 必须输出 amd64 才能用于 x86 服务器
若架构不对,删掉重拉:
docker rmi jitsi/web:stable-11031
docker pull --platform linux/amd64 jitsi/web:stable-11031
Jitsi Meet 四个核心组件:web(前端 nginx)、prosody(XMPP)、jicofo(会议焦点)、jvb(视频桥接)。
# 在 Mac 上执行(有梯子,直连 Docker Hub 极快)
docker pull jitsi/web:stable-11031
docker pull jitsi/prosody:stable-11031
docker pull jitsi/jicofo:stable-11031
docker pull jitsi/jvb:stable-11031
如果是 Apple Silicon Mac 且目标服务器是 x86_64,每条
pull前加--platform linux/amd64。
拉完确认四个都在: