企业项目管理、ORK、研发管理与敏捷开发工具平台

网站首页 > 精选文章 正文

傻瓜式DEVOPS实践手册——Gitlab部署

wudianyun 2025-01-29 18:23:58 精选文章 15 ℃

GitLab是一款开放源代码的DevOps平台,用于实现从项目规划、源代码管理、CI/CD到监控和安全性的全方位集成。GitLab主要用于版本控制、协同开发、持续集成/持续部署 (CI/CD)、自动化测试、项目管理、以及安全性管理。在诸多功能中,版本控制是GitLab最为核心的功能之一,它允许多名开发人员在统一项目中进行并行开发,通过Git进行代码的合并、分支、提交和版本回退,有效提高软件开发效率和团队协作能力

GitLab Runner 是一个开源项目,用于运行您的作业并将结果发送回 GitLab。它与 GitLab CI 结合使用,GitLab CI 是 GitLab 随附的用于协调作业的开源持续集成服务。使用场景跟Jenkins类似。

准备工作

  • 外挂目录创建
mkdir -p /opt/package/test/config /opt/package/test/logs /opt/package/test/data
    • /opt/package/gitlab/config 挂载主机配置目录
    • /opt/package/gitlab/logs 挂载主机日志目录
    • /opt/package/gitlab/data 挂载主机数据目录
  • docker-compose.yml创建
services:
  gitlab:
    image: gitlab/gitlab-ce:latest #默认使用最新版,也可以指定版本号
    container_name: gitlab
    restart: always
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://192.168.56.10:8090'
        gitlab_rails['gitlab_shell_ssh_port'] = 8022
        nginx['listen_port'] = 80
        nginx['listen_https'] = false
        postgresql['shared_buffers'] = "256MB"
        gitlab_rails['gitlab_shell_ssh_port'] = 8022
      GITLAB_ROOT_PASSWORD: 'gitlab2024#' #登录账号密码,省的部署后到文件再去查找
    ports:
      - "8090:80"      # 将主机端口80映射到容器端口80
      - "8022:22"    # 将主机端口2222映射到容器端口22
    volumes:
      - /opt/package/gitlab/config:/etc/gitlab   # 挂载主机配置目录到容器
      - /opt/package/gitlab/logs:/var/log/gitlab  # 挂载主机日志目录到容器
      - /opt/package/gitlab/data:/var/opt/gitlab  # 挂载主机数据目录到容器
    networks:
      - gitlab-network

networks:
  gitlab-network:
    driver: bridge
    • external_url 登录的URL地址,记得要带上端口号,端口号要跟映射的端口号一样
    • volumes 数据卷挂载,这里的目录就是前面创建的目录,且要有写权限
  • 整体目录结构如下
./gitlab
├── config
├── data
├── docker-compose.yml
└── logs

部署执行

  • 在gitlab目录下执行如下命令
docker-compose up -d

等一会,查看容器状态,等为healthy时就可以访问了

基本设置

  • 中文设置
  • 新建项目

新建一个验证项目,需要包含dockerfile、.gitlab-ci.yml,后面做CD、CD会用到这两个文件

整个DEVOPS实践手册我已经整理成PDF文档,想要的关注我留言即可

最近发表
标签列表