EDIT: After modifying the configuration file and keep trying and trying, I finally decided to just purge GitLab runner and reinstall it again. After reinstall and do the registration, everyting works fine.

每当代码被推送到我的GitLab存储库时,我都尝试创建自动部署 . 部署只是清理存储库文件,然后复制到 /var/www . 我通过这些注册在服务器上设置了一个跑步者:

root@ubuntu-512mb-xxxx:~# gitlab-runner register
Running in system-mode.

Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/ci):
https://gitlab.com/ci
Please enter the gitlab-ci token for this runner:
8xxxxxxxxxxxxxxxxxx
Please enter the gitlab-ci description for this runner:
[ubuntu-512mb-xxxx]:
Please enter the gitlab-ci tags for this runner (comma separated):

Registering runner... succeeded                     runner=8WKnQjRb
Please enter the executor: virtualbox, ssh, shell, parallels, docker, docker-ssh:
shell
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically re
loaded!

所以我假设构建将直接在我的主机服务器上运行 .

这是 toml 文件:

concurrent = 1

[[runners]]
  name = "ubuntu-512mb-xxxx"
  url = "https://gitlab.com/ci"
  token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  tls-ca-file = ""
  executor = "shell"
  [runners.ssh]
  [runners.docker]
    image = ""
    privileged = false
  [runners.parallels]
    base_name = ""
  [runners.virtualbox]
    base_name = ""

但是,从gitlab生成的构建日志表明它仍在使用docker来运行构建 .

gitlab-ci-multi-runner 1.0.0 (xxxxxxx)
Using Docker executor with image ruby:2.1 ...
Pulling docker image mysql:latest ...
Starting service mysql:latest ...
Pulling docker image postgres:latest ...
Starting service postgres:latest ...
Pulling docker image redis:latest ...
Starting service redis:latest ...
Waiting for services to be up and running...
Pulling docker image ruby:2.1 ...

Running on runner-xxxxxxx-project-xxxxxxx-concurrent-0 via xxxxxxxxxxxxxxx...
Cloning repository...
Cloning into '/builds/group/project'...
Checking out xxxxxxx as master...
Note: checking out 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'.
  • 如何在主机环境中本地运行构建?

  • 有没有办法用GitLab CI进行持续部署,只需将存储库文件复制到另一个目录中?

请不要建议webhooks,因为我正在学习GitLab CI Runner .

谢谢 .