阿里云 cli 学习/aliyun/oss/aws/s3

类似于 aws cli 相似的命令,针对 aliyun
更新于: 2023-09-15 17:51:10

官方安装<推荐>

brew install aliyun-cli

~/.aliyun 配置文件

配置好的文件,可以重点看里面的 config.json 文件

也可以用 aliyun configure list 查看设置情况

{
    "current": "frontend",
    "profiles": [
        {
            "name": "default"
        },
        {
            "name": "cuibin"
        },
        {
            "name": "frontend"
        }
    ],
    "meta_path": ""
}
aliyun oss ls oss://biotech-site-predict-frontend/aric_oss_test/ --profile frontend

设置某个配置为默认,或者在初始化的时候,直接用 default 也可以

# 语法
aliyun configure set --profile "your_setting_key"
# 实际
aliyun configure set --profile cuibin

MacOs 安装

# 1. 下载,来这里: https://github.com/aliyun/aliyun-cli
https://www.weiyun.com/disk/folder/4efd4705ea01cae0665833803b934347
# 2. 建立目录,将aliyun的bin文件解压
mkdir -p ~/github/software/aliyun
cd $HOME/github/software/aliyun
chmod +x aliyun
# 3. 将命令放到里面
ln -s $HOME/github/software/aliyun/aliyun /usr/local/bin/aliyun
# 4. check
aliyun --version

配置

以下配置的,对应的替换成你自己的

https://help.aliyun.com/document_detail/121259.html

  • cn-hangzhou
  • AccessKeyId
  • AccessKeySecret
# 配置
aliyun configure set \
  --profile akProfile \
  --mode AK \
  --region cn-hangzhou \
  --access-key-id AccessKeyId \
  --access-key-secret AccessKeySecret

# 列出
aliyun configure list  

常用命令

# 列出
aliyun oss ls oss:// --limited-num=10
# 我的测试命令
aliyun oss ls oss://biotech-site-predict-frontend

Mac 下可能出现的问题

  • “aliyun” cannot be opened because the developer cannot be verified.
解决办法:直接找到 aiyun 的程序,手动点击,然后允许打开
# 参考这里: https://blog.51cto.com/u_15127598/4510317

常用操作

  • --force: 不需要提示,直接执行
功能代码
上传(oss)
# 跳转到 build 目录,再上传文件到 oss 对应的目录里
# 没有的目录层级会自动创建
cd build
aliyun oss cp . oss://biotech-site-predict-frontend/beta --recursive
同步(sync)
# --delete: 本地没有,远程有,则删除远程
cd build
aliyun oss sync . oss://biotech-site-predict-frontend/beta --delete
删除目录
# 删除目录以及文件
aliyun oss rm oss://biotech-site-predict-frontend/beta --recursive --force

使用 docker

常用预设

import gitlab
import os

gl = gitlab.Gitlab()

# private token or personal token authentication (GitLab.com)
gl = gitlab.Gitlab(url="https://git.saybot.net/",
                   private_token=os.getenv('GITLAB_TOKEN'))

prj = gl.projects.get(2551)

prj.variables.create({'key': 'ALIBABACLOUD_ACCESS_KEY_ID', 'value': os.genenv('ALIBABACLOUD_ACCESS_KEY_ID'), 'protected': True})
prj.variables.create({'key': 'ALIBABACLOUD_ACCESS_KEY_SECRET', 'value': os.genenv('ALIBABACLOUD_ACCESS_KEY_SECRET'), 'protected': True})
prj.variables.create({'key': 'ALIBABACLOUD_REGION_ID', 'value': os.getenv('ALIBABACLOUD_REGION_ID'), 'protected': True})
prj.variables.create({'key': 'YARN_REGISTRY', 'value': os.getenv('ALO7_YARN_REGISTRY')})

利用 homebrew 安装

自己的 homebrew 源,私用

 brew install afeiship/jswork/aliyun-cli

CDN相关

切换到相关的账号: teacher * | AK:***Kov          | Valid   | cn-beijing       | en

另一个内部工具: https://aosp.alo7.com/aosp/other/itools/clearCdnCache

$ aliyun cdn RefreshObjectCaches --ObjectPath https://web-assets.alo7.com/wx-exercise-preview-h5/beta/index.html

// 返回这个结果
{
	"RefreshTaskId": "16920046725",
	"RequestId": "087866EE-9420-5746-8C3A-D261E4986ADE"
}

参考