VSTS Docker发布步骤
我对使用VSTS将Docker容器从Docker存储库推入生产服务器所需的内容感到困惑。VSTS Docker发布步骤
我也做了以下步骤:
- 创建我的Dockerfile
- 应用程序运行在VSTS构建创建一个泊坞窗容器
- 推该容器到我的帐户hub.docker.io。
我手动能够登录ontu我的linux(Ubuntu 16)框,并拉下容器并运行它100%。
我想在VSTS中创建一个释放步骤/动作,为我做最后一个手动步骤。这可能吗?如果是的话,有人可以解释这些步骤或指出一个好的指导。
注:网络盒子是我自己的私人VPS盒子,没有主要的云提供商,只是直接安装了docker的Ubuntu。
您现在有不同的选择。您可以使用Ansible这样的工具创建脚本并在远程服务器上运行。
或者,您可以创建远程服务器上的脚本,确实整个更新过程
/var/myapp/update.sh
#!/bin/bash
docker pull myimage:latest
docker stop myapp
docker rm myapp
docker run -d -p 80:80 --name myapp myimage:latest
安装基于密钥的SSH会话,然后使用以下
ssh -i keyfile <user>@<Server> bash -c "/var/myapp/update.sh"
编辑-1
对于TTY问题更改SSH命令
ssh -t -i keyfile <user>@<Server> bash -c "/var/myapp/update.sh"
对于sudo的问题,您可以将您的用户泊坞窗组
sudo usermod -aG docker <user>
好的,我在哪里运行“ssh i keyfile ...”?请记住,这是一个在VSTS上运行的发布过程。 – user281921
看看这是否有帮助https://www.visualstudio.com/en-us/docs/build/actions/agents/v2-linux –
而且这也是https://www.visualstudio.com/en-us/docs/build/steps/deploy/ssh –
你必须在框中基于SSH密钥的访问? –
我可以设置一个,而不是一个问题。 – user281921