淘东电商项目(07) -GitLab简介以及Docker部署

简介: 淘东电商项目(07) -GitLab简介以及Docker部署

引言

在上一节《淘东电商项目(06) - Linux固定IP设置以及安装Docker》主要讲解Linux的固定ip设置以及在Linux上安装Docker。

代码已提交至Github(版本号:c11f3e9a27a175f3132c644148f4a2f2930fcc70),有兴趣的同学可以下载来看看:

https://github.com/ylw-github/taodong-shop

本文继续讲解分布式基础设施环境的搭建,主要讲解GitLab以及在Docker上部署GitLab。

本文目录结构:

l____引言

l____ 1. GitLab

l________ 1.1 GitLab简介

l________ 1.2 Git、GtiHub、GtiLab三者关系

l____ 2. Docker上部署GitLab

l____ 3. 测试

l____总结

1.GitLab

1.1 GitLab简介

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务

1.2 Git、GtiHub、GtiLab三者关系

  • Git: 是版本控制系统
  • GitHub: 是在线的基于Git的代码托管服务,2008年由Ruby on Rails编写而成。GitHub同时提供付费账户和免费账户。这两种账户都可以创建公开的代码仓库,只有付费账户可以创建私有的代码仓库。
  • GitLab: 解决了这个问题, 可以在上面创建免费的私人repo。

2. Docker上部署GitLab

部署之前首先要确保如下两点:

  • 1. 虚拟机内存2G以上
  • 2. Docker一定要配置国内加速镜像,比如“阿里云”(不然下载会很慢)

1.下载镜像文件:

docker pull beginor/gitlab-ce:11.0.1-ce.0

2.创建GitLab 的配置 (etc) 、 日志 (log) 、数据 (data) 放到容器之外, 便于日后升级, 因此请先准备这三个目录。

mkdir -p /mnt/gitlab/etc
mkdir -p /mnt/gitlab/log
mkdir -p /mnt/gitlab/data

3.运行GitLab容器

docker run \
    --detach \
    --publish 8443:443 \
    --publish 8090:80 \
    --name gitlab \
    --restart unless-stopped \
    -v /mnt/gitlab/etc:/etc/gitlab \
    -v /mnt/gitlab/log:/var/log/gitlab \
    -v /mnt/gitlab/data:/var/opt/gitlab \
    beginor/gitlab-ce:11.0.1-ce.0

4.修改/mnt/gitlab/etc/gitlab.rb:

external_url改成部署机器的域名或者IP地址

vi /mnt/gitlab/etc/gitlab.rb

5.修改/mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

vi /mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

找到关键字 ## Web server settings,将host的值改成映射的外部主机ip地址和端口,这里会显示在gitlab克隆地址:

6.停止容器并删除容器

docker ps
docker stop 容器id
docker rm 容器id

7.运行GitLab容器

docker run \
    --detach \
    --publish 8443:443 \
    --publish 8090:80 \
    --name gitlab \
    --restart unless-stopped \
    -v /mnt/gitlab/etc:/etc/gitlab \
    -v /mnt/gitlab/log:/var/log/gitlab \
    -v /mnt/gitlab/data:/var/opt/gitlab \
    beginor/gitlab-ce:11.0.1-ce.0

8.浏览器访问:http://192.168.162.134:8090,需要等待比较久,可能会提示如下界面:

不着急,再等一会,因为gitLab正在启动需要时间,启动完成后,可以显示如下界面。

如果还是访问失败,可以尝试关闭防火墙

shell systemctl stop firewalld

8.设置密码

在修改页面设置初始密码,我的设置为12345678,并点击“修改密码”。

9.登录

账号为:root 密码为刚设置的:12345678

登录成功后,界面如下:

3. 测试

这里创建一个HelloWorld项目,并赋予权限给新的用户ylw。

1.在主界面点击“创建一个群组”

2.新建项目:

3.仓库的url:http://192.168.162.134/test/HelloWorld-Test.git如下:

4.退出到主页面,注册用户,注册成功后,主页面是没有仓库的。

5.登录root账户,进入项目,分配项目权限给新增的用户

6.选择人员和角色权限

7.再使用新增的账户登录,发现主页面有了项目了。

之后的之后的操作和github大致相同,可以提交更新上传文件等,由于篇幅原因,本文就不再详述。

总结

目录
相关文章
|
1月前
|
消息中间件 监控 RocketMQ
Docker部署RocketMQ5.2.0集群
本文详细介绍了如何使用Docker和Docker Compose部署RocketMQ 5.2.0集群。通过创建配置文件、启动集群和验证容器状态,您可以快速搭建起一个RocketMQ集群环境。希望本文能够帮助您更好地理解和应用RocketMQ,提高消息中间件的部署和管理效率。
246 91
|
1月前
|
存储 NoSQL Redis
Docker 部署 Redis
在使用 Docker 部署 Redis 时,为实现数据持久化,需正确挂载容器内的数据目录到宿主机。推荐命令如下: ``` docker run -d --name redis -v /mnt/data/redis:/data -p 6379:6379 redis ``` 该命令将宿主机的 `/mnt/data/redis` 目录挂载到容器的 `/data` 目录,确保 Redis 数据持久化。此路径更通用,适合大多数场景。避免使用不匹配的挂载路径,如 `/var/lib/redis` 或 `/mnt/data/redis` 到非默认目录,以防止数据无法正确持久化。
|
25天前
|
人工智能 文字识别 安全
Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具
Stirling-PDF 是一款基于 Docker 的本地化 PDF 编辑工具,支持 50 多种 PDF 操作,包括合并、拆分、转换、压缩等,同时提供多语言支持和企业级功能,满足个人和企业用户的多样化需求。
80 6
Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具
|
15天前
|
缓存 Ubuntu Linux
Docker Buildx 简介与安装指南
Docker Buildx 是一个强大的工具,提供了多架构构建、并行构建和高级缓存管理等功能。通过正确安装和配置 Buildx,可以显著提升 Docker 镜像的构建效率和灵活性。希望本文能帮助你更好地理解和使用 Docker Buildx,以提高开发和部署的效率。
152 16
|
22天前
|
中间件 关系型数据库 数据库
docker快速部署OS web中间件 数据库 编程应用
通过Docker,可以轻松地部署操作系统、Web中间件、数据库和编程应用。本文详细介绍了使用Docker部署这些组件的基本步骤和命令,展示了如何通过Docker Compose编排多容器应用。希望本文能帮助开发者更高效地使用Docker进行应用部署和管理。
53 19
|
13天前
|
Linux 虚拟化 Docker
Linux服务器部署docker windows
在当今软件开发中,Docker成为流行的虚拟化技术,支持在Linux服务器上运行Windows容器。流程包括:1) 安装Docker;2) 配置支持Windows容器;3) 获取Windows镜像;4) 运行Windows容器;5) 验证容器状态。通过这些步骤,你可以在Linux环境中顺利部署和管理Windows应用,提高开发和运维效率。
67 1
|
1月前
|
Kubernetes 持续交付 数据库
阿里云ACK+GitLab企业级部署实战教程
GitLab 是一个功能强大的基于 Web 的 DevOps 生命周期平台,整合了源代码管理、持续集成/持续部署(CI/CD)、项目管理等多种工具。其一体化设计使得开发团队能够在同一平台上进行代码协作、自动化构建与部署及全面的项目监控,极大提升了开发效率和项目透明度。 GitLab 的优势在于其作为一体化平台减少了工具切换,高度可定制以满足不同项目需求,并拥有活跃的开源社区和企业级功能,如高级权限管理和专业的技术支持。借助这些优势,GitLab 成为许多开发团队首选的 DevOps 工具,实现从代码编写到生产部署的全流程自动化和优化。
|
5天前
|
Docker Python 容器
Docker——阿里云服务器使用Docker部署python项目全程小记
本文记录了我在阿里云服务器上使用Docker部署python项目(flask为例)的全过程,在这里记录和分享一下,希望可以给大家提供一些参考。
|
7月前
|
Shell Docker 容器
GitlabCI学习笔记之一:安装Gitlab和GitLabRunner
GitlabCI学习笔记之一:安装Gitlab和GitLabRunner
|
6月前
|
Docker 容器
Docker安装Gitlab和Gitlab-Runner并实现项目CICD
Docker安装Gitlab和Gitlab-Runner并实现项目CICD