BitBucket管道SSH到Digital Ocean的权限被拒绝(公钥)

时间:2019-07-14 11:22:11

标签: ssh bitbucket digital-ocean bitbucket-pipelines

我确定这不是BitBucket Pipeline和Digital Ocean的第一个问题,但是我经历了几篇类似的文章,没有任何运气。

pipelines:
  default:
    - step:
        name: SSH to Digital Ocean and update docker image
        script:
          - ssh -i ~/.ssh/config root@xxx.xxx.xxx.xxx
          - docker rm -f mycontainer
          - docker image rm -f myrepo/imagename:tag
          - docker pull myrepo/imagename:tag
          - docker run --name mycontainer -p 12345:80 -d=true --restart=always myrepo/imagename:tag
        services:
          - docker

这是我的BitBucket存储库中的SSH密钥 enter image description here

这是BitBucket管道向我显示的内容:

enter image description here

我该如何解决?

1 个答案:

答案 0 :(得分:1)

这不是关键问题-它是Pipelines容器不充当普通终端,但是ssh希望该终端在正常操作下。您应该能够将要运行的命令作为参数传递给SSH命令:ssh -i /path/to/key user@host "docker rm -f mycontainer && docker image rm -f myrepo/imagename:tag"等。