DigitalOcean纯API账号开机器教程


**本教程内容后期经过修改,可能出现图文不一致现象,图片内容仅供参考,以文字教程为准!**

准备工作

1.一台Linux的服务器(其实windows也可以)

2.你智慧的大脑

3.你灵活的手

4.DigitalOcean API Token 获取页面

1.安装Doctl

这里使用Ubuntu 20.04进行演示

前往Release页面下载最新版

1
2
3
4
sudo wget https://github.com/digitalocean/doctl/releases/download/v1.75.0/doctl-1.75.0-linux-amd64.tar.gz
sudo chmod 777 doctl-1.75.0-linux-amd64.tar.gz
tar -zxvf doctl-1.75.0-linux-amd64.tar.gz
sudo mv doctl /bin/doctl

如果是Ubuntu系统也最好不要使用snap安装,会导致doctl的ssh功能出现问题

2.授权Doctl

1
doctl auth init

根据提示输入API Token,输入时和输密码一样不会显示

3.创建SSH密钥对

如果可以登录账号绑定邮箱可以跳过这步,直接使用密码,纯API用户一定得跟着做否则无法登录

ssh-keygen -m pem -f mykey.pem

然后按三下回车,密钥就会保存到你用户名下的.ssh文件夹里

然后执行下面的命令把公钥导入DigitalOcean

doctl compute ssh-key import <Key Name> --public-key-file ~/.ssh/mykey.pub

<Key Name>可以改成自己想要的名字

记住ID,以后有用

4.创建Droplet(开机器)

查看可用配置 doctl compute size list

查看可用区 doctl compute region list

后面标注true即代表可以开机器

可用镜像列表 doctl compute image list-distribution

1
doctl compute droplet create --image <镜像ID> --size <配置> --region <可用区> <服务器名> --ssh-keys <SSH密钥ID>

举例,我需要一台Ubuntu 20.04系统的伦敦的1C2G Intel服务器,服务器名字叫ZYGLQServer,使用我上一步创建的密钥对登录,那么我就应该在命令行输入

doctl compute droplet create --image ubuntu-20-04-x64 --size s-1vcpu-2gb-intel --region lon1 ZYGLQServer --ssh-keys 34451682

接下来他会输出是否创建成功,成功的话应该如下图

接下来我们需要查看实例信息

1
doctl compute droplet get <上一步显示的8位ID>

显示的Public IPv4就是你的公网IP

5.通过SSH链接服务器

使用Doctl直接登录

doctl compute ssh <实例ID>

出现提示输入yes,如果是密钥登录这时应该已经进入服务器命令行了,密码登录首先需要你去Do绑定邮箱里找密码

密钥登陆

首先查看你的私钥,在你执行doctl的机器运行以下命令

1
2
cd ~/.ssh/
cat mykey.pem

输出的内容就是你的SSH私钥,复制然后在你电脑比如桌面 新建一个文档,粘贴进去,把扩展名改为.key

按住Shift右键密钥保存位置空的地方,在此处打开Powershell窗口

ssh -i <你保存的文件名> root@<你的服务器IP>

成功链接