3

我不清楚如何使用 rsync 将我的构建文件从 Gitlab CI(托管在https://ci.gitlab.com上)传送到我的个人服务器。

我已经设置了1 个测试1 个部署作业。

部署选项卡下,我输入了 bash 命令:

  1. 安装 rsync
  2. 更新包
  3. 最后,通过 SSH 将文件传输到我的个人服务器的 rsync 命令。

当我为我的私人个人服务器输入 SSH 凭据(带有详细标志)时,似乎 SSH 密钥是问题所在。在 Gitlab 中,我已经建立了部署密钥(对于钩子 - 对此进行了测试并且可以正常工作)。

我在哪里可以找到Gitlab 部署实例的公共 SSH 密钥,以便我可以在我的服务器上安装该密钥?

以下是在 Gitlab CI 部署作业脚本窗格中输入的确切脚本:

# Run as root
(
set -e
set -u
set -x
apt-get update -y
apt-get -y install rsync
)
git clone https://github.com/bla/deployments.git $HOME/deploy/deployments
SVR_WEB1_WEBSERVER="000.11.22.333"
USER1="franklin"
GROUP1="team1"
FROM_DIR="/gitlab-ci-runner/tmp/builds/myrepo-1/"
DEST1="subdomains/gitlab/myrepo"
EXCLUSIONS_LIST="${HOME}/deploy/deployments/exclusions/exclusions.txt"
ssh -v "$USER1@$SVR_WEB1_WEBSERVER"
/usr/bin/rsync -avzh --progress --delete -e ssh --group=$GROUP1 -p --exclude-from "$EXCLUSIONS_LIST" "$FROM_DIR" "$USER1@$SVR_WEB1_WEBSERVER:$DEST1"
4

1 回答 1

1

除非您使用自己的 gitlab-ci 运行器进行部署,否则提供您的私有 ssh 密钥是危险的。这就是为什么最好使用rsync 模块

于 2015-06-19T15:15:06.037 回答