Я уверен, что это не первый вопрос к BitBucket Pipeline и Digital Ocean, но я безуспешно просмотрел несколько подобных сообщений.
pipelines:
default:
- step:
name: SSH to Digital Ocean and update docker image
script:
- ssh -i ~/.ssh/config [email protected]
- 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
Вот ключ SSH в моем репозитории BitBucket
Вот что показывает мне BitBucket Pipeline:
Как я могу решить эту проблему?
Это не ключевая проблема — дело в том, что контейнер Pipelines не работает как обычный терминал, а ssh
ожидает терминал при нормальной работе. Вы должны иметь возможность передавать команды для запуска в качестве аргументов для команды SSH: ssh -i /path/to/key user@host "docker rm -f mycontainer && docker image rm -f myrepo/imagename:tag"
и т. д.