乐趣区

DevOps-从零开始仓库环境搭建DockerNginxNexusGitlab免费Https一基本概述

本文章用于描述如何从零开始进行阿里云仓库的搭建,以及过程中遇到的相关问题。涉及的内容包括 Docker,Nginx,Nexus,Gitlab,Https。

背景

需要搭建一个简单的用于研发的仓库环境,以保证私有 npm 包,maven 包,docker 包能正常管理;代码能正常进行 Git 版本管理。

目标:

  • 1. 硬盘挂载

    • 阿里云 linux 额外购买的硬盘服务,需要仅挂载后才可以正常使用。
  • 2. 代码仓库 Gitlab

    • 私有代码仓库,主要用于管理代码版本,以及相关文档等内容
  • 3. 包仓库 Nexus(npm,maven,docker)

    • 私有包管理仓库,用于作为 npm,maven,docker 私服使用。也可以作为内网镜像加速拉去包的过程。
  • 4. 域名代理 Nginx, 免费 Https

    • 代理 gitlab,nexus 的域名通过阿里云域名解析暴露到外网。

主要章节

  • 1、基本概述
  • 2、服务购置 + 硬盘挂载 +Docker 环境
  • 3、代码仓库 Gitlab
  • 4、包仓库 Nexus
  • 5、域名代理 Nginx+ 免费 Https

整体流程

购置流程

  • 购买域名
  • 购买服务器
  • 设置安全组
  • 设置硬盘挂载
  • Docker 环境

访问流程

  • 客户端 -> 阿里云域名解析
  • 阿里云域名解析 ->nginx 服务器 80/443 端口
  • nginx 服务器 -> 二级域名解析到 gitlab/nexus 服务器端口

完成搭建后可以使用以下域名进行服务的使用

域名 作用
http://gitlab.xxx.com gitlab 的访问
http://nexus.xxx.com nexus 管理页,npm/maven 私服上传拉取
https://gitlab.xxx.com gitlab 的访问
https://nexus.xxx.com nexus 管理页,npm/maven 私服上传拉取
https://nexus-docker.xxx.com docker 登录上传拉取

基本思路

  • 1、【Docker 部署】使用 Docker 作为服务的主要部署手段,以便快速部署升级。目前 Gitlab 以及 Nexus 能很方便的使用 Docker 进行快速部署。
  • 2、【Docker 私服】docker 私服需要独立的域名,并且为 https。所以此处我们需要用到 Https
  • 3、【Https】我们需要建立多个二级域名,此处教程主要讲解如何使用免费的 Https 进行搭建(有条件的同学请可以直接购买,应用步骤是一样的)
退出移动版