gitlab安装配置在docker下使用(完整版)

docker 安装gitlab和使用。

一、安装配置。

  1. 拉取gitlab镜像。

    docker。pull gitlab/gitlab-ce:latest。 (。gitlab-ce是稳定版,最新的latest版本默认为pull。)。# 或指定版本。  # sudo docker pull gitlab/gitlab-ce:<版本号>
  2. 创建本地映射目录。

    在你的Ubuntu主机上,目录࿱用于存储Gitlab配置文件、日志和数据a;

    mkdir。-p。/srv/gitlab/config /srv/gitlab/logs /srv/gitlab/data。
  3. 运行Gitlab-CE Docker容器。

    docker。run。 --detach。\。--hostname。gitlab。 \。--publish。443。:443。 --publish。80。:80。 --publish。222。:22。 \。--name。gitlab。 \。--restart。always。 \。-v。/srv/gitlab/config:/etc/gitlab。 \。-v。/srv/gitlab/logs:/var/log/gitlab。 \。-v。/srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest-d:后台运行-p:向外映射容器内端口,可根据实际情况修改映射端口。 --name。: 命令容器名称󿀌可根据需要进行调整 -v: 集装箱内的数据文件夹或日志󿀌将文件夹等文件夹挂在宿主机指定的目录中 一串字符出现在成功的操作后。   
  4. 验证Gitlab-CE是否成功运行。

    docker。ps。
  5. gitlababa的访问和配置-ce。
    配置gitlab-ce访问地址。
    打开浏览器󿀌输入http://<Ubuntu主机IP地址>(或https://<Ubuntu主机IP地址>,如果使用HTTPS)访问Gitlab-CE。第一次访问时󿀌您需要设置管理员密码。
    如果需要�,如果需要�您可以通过修改/srv/gitlab/config/gitlab.Gitlabb文件进一步配置-CE,例如,改变external_url、设置SMTP邮件发送等。修改后,Gitlab-CE容器需要重启,使配置生效:

    vim。/sev/gitlab/config/gitlab.rb。 (。gitlab.默认情况下,rb文件的内容都是注释。)。#用于配置http协议的访问地址,默认情况下,80࿰不添加端口号c;根据设置端口号添加端口号,找到添加端口号。external_url。 'http://192.168.1.155'#配置ssh协议中使用的访问地址和端口。gitlab_rails。[。'gitlab_ssh_host']。='192.168.1.155'gitlab_rails。[。'gitlab_shell_ssh_port']。=222。# 这个端口是run时22端口映射的222端口。:wq。 #保存配置文件并退出。#docker restart gitlab (重启gitlab容器)

    配置gitlab-ce注册邮箱。
    首先,确保您的邮箱服务(如QQ邮箱、163邮箱等)SMTP服务࿰已经开通c;并且您可以获得SMTP服务的授权码。这是因为出于安全考虑,大多数邮箱服务不允许在第三方应用中使用明文密码。
    配置Gitlab SMTP设置CE。
    接下来,Gitlabab需要编辑 CE配置文件(通常是/etc/gitlab/gitlab.rb),设置SMTP相关参数。以下是基于QQ邮箱的示例配置:

    vim。/sev/gitlab/config/gitlab.rb gitlab_rails。[。'smtp_enable']。=true。gitlab_rails。[。'smtp_address']。="smtp.qq.com"gitlab_rails。[。'smtp_port']。=465。# SMTPS通常使用465端口,STARTLS使用587端。    gitlab_rails。[。'smtp_user_name']。="your_email@qq.com"# 您的邮箱地址。  gitlab_rails。[。'smtp_password']。="your_smtp_authorization_code"# 您的SMTP授权码。  gitlab_rails。[。'smtp_domain']。="qq.com"gitlab_rails。[。'smtp_authentication']。="login"gitlab_rails。[。'smtp_enable_starttls_auto']。=true。# 如果使用STARTLS,设置为true。  gitlab_rails。[。'smtp_tls']。=true。# 如果使用SMTPS(端口465),设置为true。  gitlab_rails。[。'gitlab_email_from']。='your_email@qq.com'# 发件人邮箱地址。  gitlab_rails。[。'gitlab_email_display_name']。='GitLab CE'# 发件人显示名字。请注意,根据您的邮箱服务提供商和具体需求,上述参数可能需要相应的调整。 保存配置文件后󿀌重启gitlab容器,确保配置有效。 docker。restart  gitlab。

    测试SMTP配置。
    Gitlab 在CE控制台中,您可以使用以下命令来测试SMTP配置是否成功a;

    docker。exec。-it。gitlab  /bin/bashgitlab-rails console  Notify.test_email。(。'your_test_email@example.com', 'Subject', 'Body')。.deliver_now。

    替换your_替换your_test_email@example.com、Subject和body为您测试邮箱地址、邮件主题和邮件内容。如果配置成功,#xff00c;你应该能够在指定的测试邮箱中收到Gitlab的一封信 CE测试邮件。

    重置root账号密码。

    进入gitlab 容器中。docker。exec。-it。gitlab /bin/bash或。docker。exec。-it。<容器id。>/bin/bash。

    设置修改rot密码。
    重置您的root密码,请先用root特权登录服务器。使用以下命令启动Rubyby on Rails控制台。
    #gitlab-rails console -e production。
    等待控制台加载,有很多方法可以找到用户,您可以搜索电子邮件或用户名。
    user = User.where(id: 1).first。
    现在,您可以更改密码。
    user.password = ‘secret_pass’。
    user.password_confirmation = ‘secret_pass’。
    重要的是,您必须同时更改密码和pasword_confirmation才能使其正常工作c;别忘了保存变化。
    user.save!。
    exit。
    使用root后,可以通过web端登录。

二、使用gitlab。

创建一个项目。
第一次输入新的root用户密码,设置后确定即可。
在这里插入图片描述

现在我们可以建立一个新的项目,点击Create a project。

在这里插入图片描述
创建完成后:

在这里插入图片描述

  1. 用户使用。
    下载git.exe。
    双击git.exe安装git(点下一步,直到完成)
    右键单击电脑桌面空白处,看到以下两行即可成功安装。
    登录gitlab网页。
    url:http://192.168.1.155。
    填写帐号密码登录。
    在这里插入图片描述

  2. 设置ssh。

    1。.打开本地git bash,使用以下命令生成ssh公钥和私钥对。#ssh-keygen -t rsa -C 'xxx@xxx.com' 然后一路回车。(。-C 参数是您的邮箱地址。)。2。.然后输入命令:#cat ~/.ssh/id_rsa.pub。3。.打开gitlab,找到Profile Settings--。>SSH Keys---。>Add SSH Key,并将上一步中复制的内容粘贴到Key对应的文本框中。
  3. gitlab克隆代码。

    1。)。.点击projects返回gitlab页面。>your projects。2。)。.选择需要克隆的项目,进入。3。)。.点击按钮复制地址。4。)。.新文件夹󿼌我在这里在我的电脑D盘下新建project文件夹。5。)。.右键选择进入projects文件夹-。>Git Bash Here。6。)。.设置用户名和邮箱。#git config --global user.name "您的名字"#git config --global user.email "您的邮箱"7。)。.克隆项目。#git clone ssh://git@192.168.1.155:222/coe/dotware-svr.git。8。)。.查看projects文件夹这个项目已经被克隆了。
  4. 向gitlab提交代码。

    1。)。.基于上述步骤󿀌在克隆项目文件夹下添加一个测试文件。2。)。.检查同步状态   右键单击项目文件夹。>Git Bash Here。 #git status。红色部分可以看到需要提交的文件。3。)。.提交代码。 #git add test.txt。然后输入以下命令提交并添加提交信息。 #git commit -m "message"最后,将以下命令输出到gitlab。 #git push origin master。提交完成啦 回到gitlab上看这个项目就能看到多了一个txt测试文件。
    **docker保存镜像,加载另一台电脑。(。以gitlab镜像为例。)。:**。 docker。save。 -o。gitlab.tar  gitlab/gitlab-ce:latest。   #请替换您实际使用的gitlab镜像和标签。将保存的镜像文件传输到另一台计算机,在另一台电脑上加载gitlab镜像。 docker。load。 -i。gitlab.tar。

参考:https://www.jianshu.com/p/080a962c35b6。