gitlab+reviewdog+golangci-lint实现提交MR时进行代码检测

本文使用 shell 作为 gitlab-runner 执行器 (executor) 演示提交 MR 时执行代码检查。 gitlab搭建参考文章:<基于docker搭建的gitlab实现CI/CD>,本文只是把文章中 runner 执行器由 docker 变成了 shell。 1.准备工作 安装gitlab-runner、reviewdog、golangci-lint #安装 gitlab-runner curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/scrip...

CI/CD 2022/06/22 186℃ 0条

docker多阶段构建

多阶段的构建对于那些努力优化 Dockerfiles 的开发者来说非常有用,同时也使 Dockerfiles 更易于阅读和维护。 1.多阶段 build 之前的 build build镜像 最具挑战性的事情之一是使镜像变得更小。Dockerfile 中的每条指令都会为镜像添加一层,需要记住的是要清理任何不需要的内容,然后再进入下一层。为了编写一个非常有效的 Dockerfile,传统上需要采用shell技巧和其他逻辑来保持每一层尽可能小,并确保每一层都具有上一层中所需的内容,而没有其他多余内容。 实际上,一个用于生产环境的 Dockerfile(其中包含构建应用程序所需的一切),其中仅包...

中间件,CI/CD,容器 2022/06/22 156℃ 0条

基于docker搭建的gitlab实现CI/CD

在开发过程中,提起CI/CD就会想到使用gitlab来实现。本文使用docker搭建gitlab环境,基于官方文档说明并尝试对常见CI/CD操作做讲解说明。 1.gitlab 所需硬件配置 目前,gitlab对内存要求最小是4G。本文使用服务器配置:阿里云ECS,4核8G 配置低的话,容易把系统搞死,gitlab 比较占资源 2.安装docker 卸载老版本docker yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docke...

中间件,CI/CD 2022/06/21 129℃ 0条