是否可以在不使用任何 Docker 镜像的情况下实现 GitLab CI 工作流程?我看到的所有 GitLab 运行器示例都仅基于 docker。即使是生产部署也是如此。
如何在现有的 Linux 机器上实现 GitLab CI 和部署流程?在生产服务器上,如果 package.json 已修改,我想部署代码并运行 npm install,然后重新启动节点实例
我想使用多个运行器,并且每个运行器都有 Docker 镜像,这会消耗资源。
答案1
是的,这是可能的。您可以在 gitlab-ci-multi-runner 中使用 shell 执行器。以下是如何注册 runner 的示例:
sudo gitlab-ci-multi-runner register -n \
--url https://gitlab.com/ci \
--registration-token REGISTRATION_TOKEN \
--executor shell \
--description "My Runner"
然后你指定的所有脚本.gitlab-ci.yml文件将代表 gitlab-runner 用户在 shell 中执行。这里是 shell 执行器的详细描述。并且这里是 gitlab-ci-multi-runner 中不同执行器的比较。