如何在 azure-pipelines 中使用 public 键对某些内容进行 scp?
How to scp something with public key in azure-pipelines?
我的 azure pipeline 包含编译项目和从中构建 docker 图像。
现在我想将此图像复制到目标机器并运行它在那里。
使用 shell 脚本我正在做的是:
sudo docker build -f src/main/docker/Dockerfile.jvm -t $docker_name .
sudo docker save $docker_name > $tar_name
scp $tar_name $target_path
我想我已经在 azure-pipelines 中完成了 build
和 save
部分。
但是scp怎么办?我需要管道中的一些 ssh 密钥才能在目标机器上对其进行授权。它不能是我的密钥对,因为它会被泄露。那怎么制作管道呢?
这里是the task description。它指出,
The task supports use of an SSH key pair to connect to the remote
machine(s).
但没有解释,如果我有密钥对,如何使用。
我发现 Azure
有一个名为 CopyFilesOverSSH
的特殊管道任务。它以预配置的“服务连接”形式接收密钥,应在单独的页面上配置:
配置 service connection
涉及正确存储密钥。
不需要调用 scp
命令本身。
我的 azure pipeline 包含编译项目和从中构建 docker 图像。
现在我想将此图像复制到目标机器并运行它在那里。
使用 shell 脚本我正在做的是:
sudo docker build -f src/main/docker/Dockerfile.jvm -t $docker_name .
sudo docker save $docker_name > $tar_name
scp $tar_name $target_path
我想我已经在 azure-pipelines 中完成了 build
和 save
部分。
但是scp怎么办?我需要管道中的一些 ssh 密钥才能在目标机器上对其进行授权。它不能是我的密钥对,因为它会被泄露。那怎么制作管道呢?
这里是the task description。它指出,
The task supports use of an SSH key pair to connect to the remote machine(s).
但没有解释,如果我有密钥对,如何使用。
我发现 Azure
有一个名为 CopyFilesOverSSH
的特殊管道任务。它以预配置的“服务连接”形式接收密钥,应在单独的页面上配置:
配置 service connection
涉及正确存储密钥。
不需要调用 scp
命令本身。