pip install ucloud-sdk-python3 PyYAML paramiko
在使用前,需要在Skill目录下创建配置文件 assets/config.yaml:
compshare:
public_key: "your-public-key"
private_key: "your-private-key"
region: "cn-wlcb"
zone: "cn-wlcb-01"
base_url: "https://api.compshare.cn"
public_key 和 private_key--config 指定的路径assets/config.yaml(Skill目录下)调用 scripts/compshare_client.py 脚本,使用 create 命令:
python scripts/compshare_client.py create \
--gpu-type 4090 \
--gpu-count 1 \
--cpu 16 \
--memory 64 \
--disk-size 200 \
--image-id 500WHhII1fnz \
--name "ComfyUI-4090" \
--charge-type Spot
调用脚本使用 list 命令:
python scripts/compshare_client.py list
# 或查询特定实例
python scripts/compshare_client.py list --instance-ids "instance-id-1,instance-id-2"
正常开机(带GPU):
python scripts/compshare_client.py start --instance-id <UHostId>
无卡开机(不带GPU,节省费用):
python scripts/compshare_client.py start --instance-id <UHostId> --without-gpu
调用脚本使用 stop 命令:
python scripts/compshare_client.py stop --instance-id <UHostId>
调用脚本使用 reboot 命令:
python scripts/compshare_client.py reboot --instance-id <UHostId>
调用脚本使用 reset-password 命令:
python scripts/compshare_client.py reset-password --instance-id <UHostId> --password <new-password>
调用脚本使用 delete 命令:
python scripts/compshare_client.py delete --instance-id <UHostId>
通过实例的 SshLoginCommand 和 Password 连接实例:
python scripts/compshare_client.py list
# 返回结果中包含 SshLoginCommand 和 Password
python scripts/ssh_client.py connect \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password"
python scripts/ssh_client.py exec \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--cmd "ls -la /home"
列出目录:
python scripts/ssh_client.py ls \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--path "/home"
上传文件:
python scripts/ssh_client.py upload \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--local ./local_file.txt \
--remote /home/remote_file.txt
下载文件:
python scripts/ssh_client.py download \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--remote /home/remote_file.txt \
--local ./local_file.txt
上传整个目录:
python scripts/ssh_client.py upload-dir \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--local ./my_project \
--remote /home/my_project
下载整个目录:
python scripts/ssh_client.py download-dir \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--remote /home/data \
--local ./data_backup
查看文件内容:
python scripts/ssh_client.py cat \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--path /etc/hosts
创建目录:
python scripts/ssh_client.py mkdir \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--path /home/new_dir
删除文件:
python scripts/ssh_client.py rm \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--path /home/old_file.txt
重命名文件/目录:
python scripts/ssh_client.py rename \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--old /home/old_name \
--new /home/new_name
修改权限:
python scripts/ssh_client.py chmod \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password" \
--path /home/script.sh \
--mode 755
交互式Shell:
python scripts/ssh_client.py shell \
--ssh-command "ssh -p 12345 root@192.168.1.1" \
--password "your-password"
共 2 个版本