一、安装
1. 安装 docker
注意:Windows 10 家庭版获取 之前的版本不能直接安装 Docker ,而是需要去安装我这里安装的是 Docker Toolbox。按照这个安装教程进行安装 ,
安装完成之后,(由于我电脑之前就安装了 git ,所以在安装过程中并没有勾选 git 安装)
如果安装成功之后,在验证安装时,点击桌面快捷方式不管用。可以到安装目下直接双击运行 start.sh 。
2. 安装 gitlab-runner
由于公司代码管理使用 Gitlab 进行,所以没有在本地安装 gitlab。
我们先查看一下 docker 的安装信息:
用docker in docker 的方式安装运行gitlab-runner
在命令行中输入:
docker pull gitlab/gitlab-runner
拉取gitlab-runner镜像,等待完成。
然后再输入:
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容器。
3. 配置 gitlab-runner
在命令行中输入以下命令注册一个新的Runner实例:
docker exec -it gitlab-runner gitlab-runner register
开发项目 gitlab 地址 和 gitlab-ci token 都可以在gitlab项目中查看:
runner 配置完成之后,就可以在给gitlab 中看到你的 runner
到这里就为 gitlab 中的项目配置了一个 docker 环境下的 runner。不过从上图可以看出为这个工程配置的 runner 只是服务与当前项目的。但是 runner 中有共享的 runner 。如何创建共享的 runner 会后续更新。如果这篇文章有帮到你,点个赞,加个关注。
这里再加个提醒,如果项目已经配置 ci 脚本,发现提交代码之后,ci 一直处于 pending状态,有一个 struct 的标识。很有可能是你的 runner 中有一项配置没有打开:
参考:
附: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
6. 想要删除untagged images,也就是那些id为的image的话可以用
docker rmi $(docker images | grep "^" | 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/admindocker 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. 停止、启动、杀死、重启一个容器
1 docker stop Name或者ID 2 docker start Name或者ID 3 docker kill Name或者ID 4 docker restart name或者ID
14. 修改配置、退出容器
1、如果要正常退出不关闭容器,请按Ctrl+P+Q进行退出容器2、如果使用exit退出,那么在退出之后会关闭容器,可以使用下面的流程进行恢复使用docker restart命令重启容器使用docker attach命令进入容器
推荐: