828华为云征文|华为云Flexus X实例docker部署最新gitlab社区版,搭建自己的私人代码仓库

828华为云征文|华为云Flexus X实例docker部署最新gitlab社区版,搭建自己的私人代码仓库

  • 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧!

什么是华为云Flexus X实例

  • 华为云Flexus X实例云服务是新一代开箱即用、体验跃级、面向中小企业和开发者打造的高品价比云服务产品。
  • Flexus云服务器X实例是新一代面向中小企业和开发者打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。

开始接触华为云Flexus云服务器X实例

  • 获取华为云Flexus云服务器X实例后第一步就是先去华为云上重置服务器密码

  • 重置完毕后用ssh工具登录华为云服务器,这里我用的是finalshell,也可以用其他工具登陆比如xshell或者Putty都可以

  • 登录上去查看硬盘大小,可以看到是100g硬盘,硬盘总大小是正常的

    root@flexusx-ebe8:~# df -h
    Filesystem Size Used Avail Use% Mounted on
    tmpfs 1.2G 1.1M 1.2G 1% /run
    /dev/vda1 99G 4.2G 90G 5% /
    tmpfs 5.7G 0 5.7G 0% /dev/shm
    tmpfs 5.0M 0 5.0M 0% /run/lock
    tmpfs 1.2G 4.0K 1.2G 1% /run/user/0

  • 然后输入 ufw status可以看到默认防火墙是关闭的,因此我们就不需要额外再去配置端口开放相关的配置,只要在华为云安全组配置端口开放就可以了

    root@flexusx-ebe8:~# ufw status
    Status: inactive

docker环境的安装

  • 如图所示,把离线包传到服务器上,进行安装

    dpkg -i *.deb

  • 查看安装的docker版本

    root@flexusx-ebe8:/home/docker# docker -v
    Docker version 27.1.2, build d01f264

  • 至此docker容器环境安装完毕


什么是gitlab

  • GitLab 是一个基于 Git 的 DevOps 平台,提供版本控制、持续集成(CI)、持续交付/部署(CD)等功能。它用于软件开发项目的管理,支持代码托管、代码审查、项目管理、自动化构建和测试等功能。GitLab 与 GitHub 类似,也是一个代码仓库托管平台,但其功能更全面,尤其在 CI/CD 方面更加强大。
  • 总体来说,GitLab 是一个功能齐全的 DevOps 平台,帮助开发团队高效协作、自动化开发流程、提高代码质量和安全性。

开始安装gitlab

  • 先去查看gitlab的镜像

  • 选择最新稳定版本

  • 拉取gitlab镜像docker pull gitlab/gitlab-ce:latest

    root@flexusx-ebe8:~# docker pull gitlab/gitlab-ce:latest
    latest: Pulling from gitlab/gitlab-ce
    857cc8cb19c0: Pull complete
    28812802a434: Pull complete
    54e2e989e54c: Pull complete
    abb7892b26dc: Pull complete
    e9d667f5a8c1: Pull complete
    a8891519352d: Pull complete
    8b624a00a604: Pull complete
    0cf3370d74b6: Pull complete
    3253094bd895: Pull complete
    Digest: sha256:6f2ab9c42cef6b8058ef45042ce33a4505a0a9ac1a8d9ed85016ceca743dd01d
    Status: Downloaded newer image for gitlab/gitlab-ce:latest
    docker.io/gitlab/gitlab-ce:latest

  • 开始创建映射目录 mkdir -p /home/docker/gitlab/configmkdir -p /home/docker/gitlab/logsmkdir -p /home/docker/gitlab/data

    docker run -d -p 30080:80 -p 30081:443 -p 30082:22 --restart always --name gitlab -v /home/docker/gitlab/config:/etc/gitlab -v /home/docker/gitlab/logs:/var/log/gitlab -v /home/docker/gitlab/data:/var/opt/gitlab --privileged=true gitlab/gitlab-ce:latest

  • 查看gitlab运行情况

    root@flexusx-ebe8:/home/docker/gitlab# docker run -d -p 30080:80 -p 30081:443 -p 30082:22 --restart always --name gitlab -v /home/docker/gitlab/config:/etc/gitlab -v /home/docker/gitlab/logs:/var/log/gitlab -v /home/docker/gitlab/data:/var/opt/gitlab --privileged=true gitlab/gitlab-ce:latest
    adb9566190afafb28c5d62bffaa940a7aa72dc0bdea8fd6a5e1cc2a24551406f
    root@flexusx-ebe8:/home/docker/gitlab# docker ps
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    adb9566190af gitlab/gitlab-ce:latest "/assets/wrapper" 2 seconds ago Up 2 seconds (health: starting) 0.0.0.0:30082->22/tcp, :::30082->22/tcp, 0.0.0.0:30080->80/tcp, :::30080->80/tcp, 0.0.0.0:30081->443/tcp, :::30081->443/tcp gitlab

  • 然后去修改gitlab的配置文件,添加三个配置,vi /home/docker/gitlab/config/gitlab.rb

    external_url 'http://弹性公网ip'

    gitlab_rails['gitlab_ssh_host'] = '弹性公网ip'

    gitlab_rails['gitlab_shell_ssh_port'] =30082

    gitlab_rails['time_zone'] = 'Asia/Shanghai'

  • 然后进入容器,重启配置 docker exec -it gitlab /bin/bash,然后执行 gitlab-ctl reconfigure,当出现 gitlab Reconfigured!,代表配置完毕,然后退出容器,再重启容器

    docker restart gitlab

  • 此时docker启动最新版gitlab已经完成,但是还需要去安全组开放端口

配置Flexus云服务器X实例安全组

  • 经过上面部署srs服务,这时候服务是已经部署完毕了,但是我们还没法通过外网进行访问,还需要对Flexus云服务器X安全组的配置进行修改

  • 进入安全组的配置页面

  • 新建安全组

  • 这里我们开放30080,30081,30082端口

  • 然后加入新建的安全组

  • 这样我们的实例的端口也就开放成功了

配置jenkins使用

  • 端口开放后,访问gitlab的页面 输入 弹性公网ip:30080

  • 这里的默认密码在 /home/docker/gitlab/config/initial_root_password

  • 输入账号密码登录

  • 把语言配置为中文

  • 重新修改密码

  • 至此华为云Flexus X实例docker部署最新gitlab社区版完成

欢迎大家一起加入华为云!

相关推荐
石明亮(JT)31 分钟前
docker部署jenkins
java·docker·jenkins
Мартин.1 小时前
[Meachines] [Easy] GoodGames SQLI+Flask SSTI+Docker逃逸权限提升
python·docker·flask
老王聊主机1 小时前
2025年华为云一键快速部署幻兽帕鲁联机服务器教程
运维·服务器·华为云
不会飞的小龙人12 小时前
Docker Compose创建镜像服务
linux·运维·docker·容器·镜像
不会飞的小龙人12 小时前
Docker基础安装与使用
linux·运维·docker·容器
张3蜂12 小时前
docker Ubuntu实战
数据库·ubuntu·docker
染诗17 小时前
docker部署flask项目后,请求时总是报拒绝连接错误
docker·容器·flask
张3蜂18 小时前
docker 部署.netcore应用优势在什么地方?
docker·容器·.netcore
心惠天意20 小时前
docker-compose篇---创建jupyter并可用sudo的创建方式
docker·jupyter·容器
huaweichenai21 小时前
windows下修改docker的镜像存储地址
运维·docker·容器