Windows 下 docker 部署 gitlab ci

一、安装

1. 安装 docker

Docker下载

注意:Windows 10 家庭版获取 之前的版本不能直接安装 Docker ,而是需要去安装 Docker Toolbox

Windows 下 docker 部署 gitlab ci

我这里安装的是 Docker Toolbox。按照这个安装教程进行安装 ,安装教程

安装完成之后,(由于我电脑之前就安装了 git ,所以在安装过程中并没有勾选 git 安装)

Windows 下 docker 部署 gitlab ci

如果安装成功之后,在验证安装时,点击桌面快捷方式不管用。可以到安装目下直接双击运行 start.sh 。

2. 安装 gitlab-runner

由于公司代码管理使用 Gitlab 进行,所以没有在本地安装 gitlab。

我们先查看一下 docker 的安装信息:

Windows 下 docker 部署 gitlab ci

用docker in docker 的方式安装运行gitlab-runner

在命令行中输入:

docker pull gitlab/gitlab-runner

拉取gitlab-runner镜像,等待完成。

Windows 下 docker 部署 gitlab ci

然后再输入:

docker run -d --name gitlab-runner --restart always -v /srv/gitlab-runner/config:/etc/gitlab-runner -v /var/run/docker.sock:/var/run/docker.sock gitlab/gitlab-runner:latest

创建并运行gitlab-runner容器。

Windows 下 docker 部署 gitlab ci

3. 配置 gitlab-runner

在命令行中输入以下命令注册一个新的Runner实例:

docker exec -it gitlab-runner gitlab-runner register

Windows 下 docker 部署 gitlab ci

开发项目 gitlab 地址 和 gitlab-ci token 都可以在gitlab项目中查看:

Windows 下 docker 部署 gitlab ci

runner 配置完成之后,就可以在给gitlab 中看到你的 runner

Windows 下 docker 部署 gitlab ci

到这里就为 gitlab 中的项目配置了一个 docker 环境下的 runner。不过从上图可以看出为这个工程配置的 runner 只是服务与当前项目的。但是 runner 中有共享的 runner 。如何创建共享的 runner 会后续更新。如果这篇文章有帮到你,点个赞,加个关注。

这里再加个提醒,如果项目已经配置 ci 脚本,发现提交代码之后,ci 一直处于 pending状态,有一个 struct 的标识。很有可能是你的 runner 中有一项配置没有打开:Windows 下 docker 部署 gitlab ci

参考:

Windows下使用docker部署gitlab CI服务

附:Docker 简单命令:

1. 列出所有容器ID

docker ps -aq

2. 查看所有运行或者不运行容器

docker ps -a

3. 停止所有的container(容器),这样才能够删除其中的images:

docker stop $(docker ps -a -q) 或者 docker stop $(docker ps -aq)

3. 如果想要删除所有container(容器)的话再加一个指令:

docker rm $(docker ps -a -q) 或者 docker rm $(docker ps -aq) 

4. 查看当前有些什么images

docker images

5. 删除images(镜像),通过image的id来指定删除谁

docker rmi <image id>

6. 想要删除untagged images,也就是那些id为的image的话可以用

docker rmi $(docker images | grep "^<none>" | awk "{print $3}")

7. 要删除全部image(镜像)的话

docker rmi $(docker images -q)

8. 强制删除全部image的话

docker rmi -f $(docker images -q)

9. 从容器到宿主机复制

docker cp tomcat:/webapps/js/text.js /home/admin
docker cp 容器名: 容器路径 宿主机路径

10. 从宿主机到容器复制

 docker cp /home/admin/text.js tomcat:/webapps/js
docker cp 宿主路径中文件 容器名 容器路径

11. 删除所有停止的容器

docker container prune

12. 删除所有不使用的镜像

docker image prune --force --all或者docker image prune -f -a

13. 停止、启动、杀死、重启一个容器

 docker stop Name或者ID
docker start Name或者ID
docker kill Name或者ID
docker restart name或者ID

14. 修改配置、退出容器

1、如果要正常退出不关闭容器,请按Ctrl+P+Q进行退出容器
2、如果使用exit退出,那么在退出之后会关闭容器,可以使用下面的流程进行恢复
使用docker restart命令重启容器
使用docker attach命令进入容器

推荐:

Gitlab部署CI并使用.gitlab-ci.yml配置您的作业

上一篇:基于OpenCV的车辆检测与追踪的实现


下一篇:【Spring-AOP-学习笔记-7】@Around增强处理简单示例