docker搭建gitlab

1. 搭建gitlab

shell 复制代码
# 1. 获取镜像
docker pull gitlab/gitlab-ce:latest

# 2. 创建并启动容器
# 映射了2个端口,都是需要用到的
docker run -itd -p 9980:80 -p 9922:22 --restart always --privileged=true --name gitlab gitlab/gitlab-ce
# 进入容器
docker exec -it gitlab /bin/bash

# 3. 修改配置
vi /etc/gitlab/gitlab.rb
# 增加以下条配置,docker主机的ip是192.168.1.190,ssh端口号9922
external_url '192.168.1.190'
gitlab_rails['gitlab_ssh_host'] = '192.168.1.190'
gitlab_rails['gitlab_shell_ssh_port'] = 9922

#退出保存,使配置生效
gitlab-ctl reconfigure

# 继续修改
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
# 找到以下配置,并修改
  gitlab:
    ## Web server settings (note: host is the FQDN, do not include http://)
    host: 192.168.1.190
    port: 9980
    https: false


# 重启gitlab
gitlab-ctl restart

# 4. 设置root用户密码
gitlab-rails console
user = User.where(id:1).first
# 设置密码
user.password='12345678'
user.save

# 到此,配置ok

2. 配置ssh

  1. 生成ssh密钥
shell 复制代码
ssh-genkey -t ecdsa -C "邮箱地址"

然后一直确认就可以,建议不要用-t rsa,openssh不建议使用,好多问题。

会在~/.ssh/下生成两个文件:id_ecdsa、id_ecdsa.pub

  1. 创建用户

使用root用户登陆 http://192.168.1.190:9980,创建用户,账号邮箱需与生成ssh时的一致。

  1. 用户设置ssh
    使用新创建的用户登陆gitlab,进入 http://192.168.1.190:9980/-/profile/keys ,添加key,将 id_ecdsa.pub 中的内容填入即可。

3. 创建仓库并同步

git全局设置

shell 复制代码
git config --global user.name "名称"
git config --global user.email "邮箱"

git单项目设置(适合不同项目不同用户名称使用)

shell 复制代码
git config user.name "名称"
git config user.email "邮箱"

创建新仓库

shell 复制代码
git clone ssh://git@192.168.1.190:9922/android/rk3568-app.git
cd rk3568-app
git switch --create main
touch README.md
git add README.md
git commit -m "add README"
git push --set-upstream origin main

将文件夹push到空仓库

shell 复制代码
cd existing_folder
git init --initial-branch=main
git remote add origin ssh://git@192.168.1.190:9922/android/rk3568-app.git
git add .
git commit -m "Initial commit"
git push --set-upstream origin main

将文件夹push到已存在的仓库

shell 复制代码
cd existing_repo
git remote rename origin old-origin
git remote add origin ssh://git@192.168.1.190:9922/android/rk3568-app.git
git push --set-upstream origin --all
git push --set-upstream origin --tags

关联远程仓库

shell 复制代码
git init --initial-branch=main
git remote add origin ssh://git@192.168.1.190:9922/android/rk3568-app.git
git fetch

# 拉取远程库
git checkout -b main origin/main
git pull origin main
相关推荐
小Pawn爷29 分钟前
4.镜像仓库
docker
江湖有缘2 小时前
零基础入门:使用 Docker 快速部署 Organizr 个人主页
java·服务器·docker
礼拜天没时间.4 小时前
深入Docker架构——C/S模式解析
linux·docker·容器·架构·centos
猫头虎4 小时前
如何使用Docker部署OpenClaw汉化中文版?
运维·人工智能·docker·容器·langchain·开源·aigc
会周易的程序员4 小时前
openplc runtimev4 Docker 部署
运维·c++·物联网·docker·容器·软件工程·iot
小Pawn爷5 小时前
1.Docker基础
运维·docker·容器
不倒翁玩偶5 小时前
Gitlab拉取代码token换成账号密码登录
gitlab
chinesegf5 小时前
清理docker残留镜像images
运维·docker·容器
小Pawn爷5 小时前
2.Docker的存储
运维·docker·容器
礼拜天没时间.6 小时前
自定义镜像制作——从Dockerfile到镜像
linux·docker·容器·centos·bash