ECS快速搭建基于Docker的Gitlab

简介: 在云平台上快速搭建Gitlab,作为私有代码库使用,问题试错很多,写下自己最优解

快速搭建gitlab

可以使用批量计算里的APP服务来自动配置docker与gitlab的环境,该方法适用与多台服务器以上的环境(实例台数必须大于等于2)

以下操作皆是单台ECS实例,系统为centos8.0
根据很多大佬教程汇总,完全接受真实实验测试,请放心参考以及适用

安装docker

连接阿里云服务器(当然可以是其他云)

安装依赖

yum install -y yum-utils device-mapper-persistent-data lvm2

添加yum仓库

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum makecache

安装docker-ce

dnf -y  install docker-ce --nobest

docker开机自启

systemctl enable --now docker

添加当前用户到docker group

usermod -aG docker $USER
newgrp docker

Docker安装gitlab

启动docker

systemctl start gitlab

查看gitlab镜像

docker search gitlab
NAME                                         DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
gitlab/gitlab-ce                             GitLab Community Edition docker image based …   2797                                    [OK]
sameersbn/gitlab                             Dockerized gitlab web server                    1147                                    [OK]
gitlab/gitlab-runner                         GitLab CI Multi Runner used to fetch and run…   591                                     [OK]
twang2218/gitlab-ce-zh                       汉化的 GitLab 社区版 Docker Image                     211                                     [OK]
gitlab/gitlab-ee                             GitLab Enterprise Edition docker image based…   179                                     
jangrewe/gitlab-ci-android                   GitLab CI image for building Android apps       53                                      [OK]
edbizarro/gitlab-ci-pipeline-php             Docker images for build and test PHP applica…   32                                      
centurylink/gitlab                           This image uses the image from sameersbn / g…   26                                      [OK]
klud/gitlab-runner                           GitLab Runner for ARM devices                   22                                      
gitlab/gitlab-runner-helper                                                                  20                                      
ciricihq/gitlab-sonar-scanner                Gitlab Docker container to run sonar-scanner…   16                                      [OK]
dockerphp/gitlab-ci-pipeline                 Gitlab CI pipeline for PHP applications         4                                       [OK]
gitlab/gitlab-ce-qa                          GitLab QA has a test suite that allows end-t…   4                                       
sgillespie/gitlab-runner                     A Dockerized GitLab Runner that automaticall…   3                                       [OK]
gitlab/cog                                   GitLab Bundle for Cog                           3                                       
mastertinner/gitlab-merge-request-resource   A concourse resource to check for new merge …   2                                       [OK]
lorands/gitlab-merge-request-resource        This is a fork of swisscom/gitlab-merge-requ…   1                                       [OK]
stanfordlegion/gitlab-ci                     An image for Gitlab CI.                         1                                       [OK]
boldcommerce/gitlab-merge-request-resource   Reverted build of Swisscom's resource until …   1                                       [OK]
samcontesse/gitlab-merge-request-resource    A concourse resource to check for new merge …   1                                       [OK]
edtan1/gitlab-merge-request-resource         GitLab Merge Request resource for ConcourseCI   0                                       [OK]
onaci/gitlab-runner                          auto-registering gitlab runner                  0                                       
mvisonneau/gitlab-ci-pipelines-exporter      Prometheus / OpenMetrics exporter for GitLab…   0                                       [OK]
adamkl/gitlab-merge-request-resource         Customized with support for gitlab ssh on di…   0                                       [OK]
gitlab/gitlab-ee-qa                          GitLab QA has a test suite that allows end-t…   0                                       

这里有一个中文镜像,我们就选用中文版的

docker pull twang2218/gitlab-ce-zh

如果下载时速度变得很慢无法继续时,可以使用docker镜像加速器
可以访问https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors进行查询

针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://9364avw5.mirror.aliyuncs.com"]
}
EOF

最好进行检查

cat /etc/docker/daemon.json
sudo systemctl daemon-reload
sudo systemctl restart docker

运行docker容器

这里的8080代表web访问端口,可以修改成您需要发放的端口,同时为了外网访问成功,请在 控制台->安全组 中开启对应的端口规则

docker run -d -p 8080:80 --restart=always --name gitlab twang2218/gitlab-ce-zh

可以打开web进行使用了

启动 GitLab 后,第一次访问时,会要求设置 root 用户的密码,密码不得小于8位。设置好后,就可以登录使用了。

  • systemctl start docker #运行Docker守护进程
  • systemctl stop docker #停止Docker守护进程
  • systemctl restart docker #重启Docker守护进程
相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
4天前
|
存储 Linux Docker
docker在欧拉服务器上编译安装应该注意什么?如何操作?
【10月更文挑战第31天】docker在欧拉服务器上编译安装应该注意什么?如何操作?
21 2
|
16天前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
153 2
|
17天前
|
弹性计算 数据库连接 Nacos
阿里云ECS服务器在docker中部署nacos
docker pull nacos 失败,docker部署nacos遇到的问题,nacos数据库连接,nacos端口映射
76 1
|
27天前
|
网络安全 虚拟化 Docker
SSH后判断当前服务器是云主机、物理机、虚拟机、docker环境
结合上述方法,您可以对当前环境进行较为准确的判断。重要的是理解每种环境的特征,并通过系统的响应进行综合分析。如果在Docker容器内,通常会有明显的环境标志和受限的资源视图;而在云主机或虚拟机上,虽然它们也可能是虚拟化的,但通常提供更接近物理机的体验,且可通过硬件标识来识别虚拟化平台。物理机则直接反映硬件真实信息,较少有虚拟化痕迹。通过这些线索,您应该能够定位到您所处的环境类型。
20 2
|
29天前
|
Ubuntu 应用服务中间件 开发工具
Ubuntu16.04搭建gitlab服务器,搭建pip源服务器(两种方式),搭建apt源服务器
这篇文章是关于如何在Ubuntu 16.04系统上搭建GitLab服务器、pip源服务器(使用pypiserver和NGINX两种方式),以及apt源服务器的详细教程。
22 0
Ubuntu16.04搭建gitlab服务器,搭建pip源服务器(两种方式),搭建apt源服务器
|
1月前
|
前端开发 开发工具 git
如何清理 docker 磁盘空间+修改 Gitea 服务器的 Webhook 设置+前端一些好学好用的代码规范-git hook+husky + commitlint
如何清理 docker 磁盘空间+修改 Gitea 服务器的 Webhook 设置+前端一些好学好用的代码规范-git hook+husky + commitlint
29 5
|
21天前
|
前端开发 Docker 容器
主机host服务器和Docker容器之间的文件互传方法汇总
Docker 成为前端工具,可实现跨设备兼容。本文介绍主机与 Docker 容器/镜像间文件传输的三种方法:1. 构建镜像时使用 `COPY` 或 `ADD` 指令;2. 启动容器时使用 `-v` 挂载卷;3. 运行时使用 `docker cp` 命令。每种方法适用于不同场景,如静态文件打包、开发时文件同步及临时文件传输。注意权限问题、容器停止后的文件传输及性能影响。
|
28天前
|
网络安全 Docker 容器
【Bug修复】秒杀服务器异常,轻松恢复网站访问--从防火墙到Docker服务的全面解析
【Bug修复】秒杀服务器异常,轻松恢复网站访问--从防火墙到Docker服务的全面解析
21 0
|
1月前
|
存储 网络协议 Unix
docker的底层原理一:客户端-服务器架构
本文详细解释了Docker的客户端-服务器架构,包括常驻后台的Docker守护进程、通过命令行接口发送请求的Docker客户端、以及它们之间通过Unix socket或网络接口进行的通信。
18 0
|
2月前
|
存储 关系型数据库 MySQL
使用Docker快速部署Mysql服务器
本文介绍了如何使用Docker快速部署MySQL服务器,包括下载官方MySQL镜像、启动容器、设置密码、连接MySQL服务器以及注意事项。
433 18
下一篇
无影云桌面