首先在本地docker容器中安装GitLab和GitLab Runner
确保GitLab和GitLab Runner容器都在同一网络下,以便它们之间可以通信
docker network create gitlab-net
docker run --detach --name gitlab --hostname gitlab.example.com --network gitlab-net --publish 443:443 --publish 80:80 --publish 22:22 gitlab/gitlab-ce:latest
docker run --detach --name gitlab-runner --network gitlab-net --volume /var/run/docker.sock:/var/run/docker.sock --volume /srv/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner:latest
docker exec -it gitlab-runner gitlab-runner register --non-interactive --url http://gitlab --registration-token --executor docker --docker-image "docker:latest" --docker-volumes /var/run/docker.sock:/var/run/docker.sock --docker-network-mode gitlab-net
docker exec -it gitlab-runner gitlab-runner register --non-interactive --url http://gitlab --registration-token --executor docker --docker-image "docker:latest" --docker-volumes /var/run/docker.sock:/var/run/docker.sock --docker-network-mode gitlab-net --docker-privileged --docker-extra-hosts docker:$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')
通过这种方法可以在本地Docker容器上配置GitLab和GitLab Runner,以在Docker中管理和部署代码。