【发布时间】:2017-03-10 22:03:38
【问题描述】:
我正在使用 CD 将我的代码部署到 VPS。这个 VPS 运行的是 ubuntu 16.04 并且有一个用户“部署者”。
现在,当我使用 ssh deployer@server 时,我获得了对服务器的 shell 访问权限,然后在使用 cd /var/www 时,我进入了 /var/www 目录。
当我从 .gitlab-ci.yml 中定义的部署脚本执行此操作时,我收到此错误 /bin/bash: line 101: cd: /var/www/data/: No such file or directory。我还做了ls -al 来查看/var 的目录结构,结果发现它不包含www 目录。很明显,现在我没有www 目录的权限。
- rsync -avz --exclude=.env . deployer@devvers.work:/var/www/data/staging/home
- ssh deployer@devvers.work
- cd /var
- ls -al
- cd /var/www
这是脚本中失败的部分。有谁知道为什么我的用户在从终端使用 ssh 时和在此脚本中使用 ssh 时具有不同的权限?在正常情况下使用rsync 处理文件并复制所有文件。
【问题讨论】:
标签: bash ssh gitlab-ci gitlab-ci-runner