2021.10.28
今天发现 docker-machine 已经被官方弃用了…
后续将介绍使用 docker context 调用远程 docker 环境。
部署容器实例到远程机器上
安装
macOS 为例
base=https://github.com/docker/machine/releases/download/v0.16.0 &&
curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker-machine &&
chmod +x /usr/local/bin/docker-machine
远程主机中的配置
本例中, 远程主机系统为 Ubuntu 20.04LTS ,其 IP 地址是 10.0.2.54 。
添加一个无密码超级用户 shank
echo "shank ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/shank
将本机 ssh 公钥添加到远程用户下
ssh-copy-id shank@10.0.2.54
本地配置
添加刚配置的远程主机,我们将其命名为 ubi
docker-machine create \
--driver generic \
--generic-ip-address=10.0.2.54 \
--generic-ssh-key ~/.ssh/id_rsa \
--generic-ssh-user shank \
ubi
连接远程 docker 服务
本地 docker 命令,将执行在远程主机(ubi)上
eval $(docker-machine env ubi)
撤销配置
eval $(docker-machine env -u)
验证
docker-machine active