gitlab安装方式
0.创建所需文件夹,这个/data/gitlab/gitlab-ce/可以是任意路径,一般不要放在系统盘,这个要和2中的对应
sudo mkdir -p /data/gitlab/gitlab-ce/gitlab/{config,data,logs}
cd到gitlab目录层级,sudo chmod 755 gitlab 赋予权限
1.拉去docker镜像 最新的就行,并load载入,
docker pull gitlab/gitlab-ce:latest
2.运行下面代码
sudo docker run -itd \
--name gitlab \
--restart always \
--memory 16g \
--memory-swap 24g \
--shm-size 512m \
-p 8880:80 \
-p 8443:443 \
-p 2222:22 \
-v /data/gitlab/gitlab-ce/gitlab/config:/etc/gitlab \
-v /data/gitlab/gitlab-ce/gitlab/logs:/var/log/gitlab \
-v /data/gitlab/gitlab-ce/gitlab/data:/var/opt/gitlab \
--privileged=true \
gitlab/gitlab-ce:latest
3.运行下面的查看gitlab初始密码,用户名为root,第一次登录要用
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
4.修改配置,cd到gitlab目录下,依次运行:
vim gitlab/config/gitlab.rb
external_url 'http://gitlab.yourdomain.com' # 替换为实际域名或IP
gitlab_rails['gitlab_shell_ssh_port'] = 2222 # 匹配容器映射端口
5.运行下面的完成安装
docker exec -it gitlab gitlab-ctl reconfigure
docker restart gitlab
6.登录方式:ip:80的映射端口,此处为ip:8880
7.若登录不了,处理下防火墙
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 2222/tcp # GitLab SSH端口
sudo ufw reload
8.设置cron任务自动备份:
0 2 * * * docker exec -t gitlab gitlab-backup create
9.查看端口映射方式,确保Docker运行命令正确映射了端口(特别是80和443):
docker ps --format "table {{.Names}}\t{{.Ports}}"