docker 安装 Gitlab

GitLab 安装

复制代码
#创建容器数据卷映射目录
mkdir -p /usr/docker/gitlab/config 
mkdir -p /usr/docker/gitlab/logs 
mkdir -p /usr/docker/gitlab/data
#目录授权
chmod 777 -R /usr/docker/gitlab/*
 
#直接复制可用(记得改下宿主机ipv4,不知道怎么看,输入ip addr)
docker run -d --hostname 宿主机ipv4 -p 8443:443 -p 8080:80 -p 8222:22 --name gitlab --restart=always -v /usr/docker/gitlab/config:/etc/gitlab -v /usr/docker/gitlab/logs:/var/log/gitlab -v /usr/docker/gitlab/data:/var/opt/gitlab --shm-size 256m --privileged=true gitlab/gitlab-ce:16.9.1-ce.0
 
参数讲解
-d
  以守护进程运行
--hostname 
  设置容器内GitLab实例的主机名为宿主机IP(需替换为实际IP),GitLab会基于此生成访问URL。
-p 8443:443
  将容器HTTPS端口443映射到宿主机的8443(适合宿主机443被占用时)。
-p 8080:80
  将容器HTTP端口80映射到宿主机的8080(默认HTTP端口)。
-p 8222:22
  将容器SSH端口22映射到宿主机的8222(用于Git SSH协议操作)。
--name
  指定容器名为gitlab,便于后续管理。
restart=always   
  容器退出时自动重启(如宿主机重启后也会自动恢复)
-v /usr/docker/gitlab/config:/etc/gitlab
  挂载GitLab配置文件目录(如gitlab.rb )。
-v /usr/docker/gitlab/logs:/var/log/gitlab
  持久化日志文件。
-v /usr/docker/gitlab/data:/var/opt/gitlab
  存储应用数据(仓库、数据库等)。
--shm-size
  设置共享内存大小为256MB(GitLab Sidekiq等服务需要)
--privileged=true    
  容器获得root权限

登录

地址:http://192.168.29.128:8080/

账号:root

密码:/usr/docker/gitlab/config/initial_root_password 文件里面找到(初始密码到文件获取)

修改初始密码

复制代码
graph LR 
A[右上角头像] --> B[Preferences]
B --> C[左侧菜单"Password"]
C --> D[输入当前密码+新密码]
D --> E[保存]

修改为中文

复制代码
graph TB 
A[点击右上角头像] --> B[选择"Preferences"]
B --> C[找到"Language"下拉菜单]
C --> D[选择"简体中文"]
D --> E[保存设置]

登录后效果图

修改克隆地址

为了实现如下图效果,地址上自动加上端口号(因为在 docker 内运行)

修改配置

复制代码
#进入docker容器内部
docker exec -it gitlab bash

#编辑gitlab配置文件
vi /etc/gitlab/gitlab.rb

# 修改SSH地址
external_url 'http://192.168.29.128'
gitlab_rails['gitlab_ssh_host'] = '192.168.29.128'
gitlab_rails['gitlab_shell_ssh_port'] = 8222

# 优化内存暂用高(可降低约 2G 内存,生产环境不建议)
puma['worker_processes'] = 0
puma['min_threads'] = 1
puma['max_threads'] = 2
sidekiq['max_concurrency'] = 10

#保存退出
按ESC键 输入:wq

#重启加载 gitlab 配置文件
gitlab-ctl reconfigure

# 修改http和ssh配置
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

  gitlab:
    host: 192.168.124.194
    port: 8080  # 这里改为前面启动容器 http 映射的端口:8080
    https: false

#重启gitlab服务
gitlab-ctl restart

#退出容器
exit

最后刷新一下 gitlab ,遇到 502 页面不用慌,代表服务正在启动中,等一会就好了(会自动刷新)。

至此 docker 里面安装GitLab 完成。

相关推荐
陌生人~8 分钟前
docker安装redis
redis·docker
qq_21539789728 分钟前
docker 安装 opengauss 高斯数据库
运维·docker·容器
f***14771 小时前
对Docker部署的MySQL中的数据进行备份恢复
mysql·docker·容器
u***42072 小时前
macOs安装docker且在docker上部署nginx+php
nginx·macos·docker
m***92383 小时前
docker中配置redis
redis·docker·容器
谷隐凡二3 小时前
Docker 的核心理念及技术的简单说明
运维·docker·容器
daqinzl3 小时前
Docker 安装 Ubuntu
ubuntu·docker
会飞的小蛮猪4 小时前
Ubuntu24.04 基于Containerd部署K8s1.34(私服部署)
docker·云原生·kubernetes
秋邱4 小时前
价值升维!公益赋能 + 绿色技术 + 终身学习,构建可持续教育 AI 生态
网络·数据库·人工智能·redis·python·学习·docker
K***43068 小时前
IDEA+Docker一键部署项目SpringBoot项目
spring boot·docker·intellij-idea