前提:
安装Docker,使用yum命令在线安装
yum install docker
安装后查看Docker版本
docker -v
1、查找GitLab镜像
docker search gitlab
2、拉取gitlab docker镜像
docker pull gitlab/gitlab-ce:latest
3、运行GitLab并运行容器
sudo docker run -d -p 443:443 -p 80:80 -p 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 --privileged=true gitlab/gitlab-ce:latest
注:
1、–privileged=true 添加权限,不然无权限创建/srv/gitlab/config/gitlab.rb等配置文件
2、宿主机目录会自动创建(/srv/gitlab/config、/srv/gitlab/logs、/srv/gitlab/data)
前言:按上面的方式,gitlab容器运行没问题,但在gitlab上创建项目的时候,生成项目的URL访问地址是按容器的hostname来生成的,也就是容器的id。作为gitlab服务器,我们需要一个固定的URL访问地址,于是需要配置gitlab.rb(宿主机路径:/srv/gitlab/config/gitlab.rb)
gitlab.rb文件内容默认全是注释
vim /srv/gitlab/config/gitlab.rb
配置http协议所使用的访问地址,不加端口号默认为80
external_url 'http://192.168.43.204'
配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '192.168.43.204''
此端口是run时22端口映射的222端口
gitlab_rails['gitlab_shell_ssh_port'] = 222
4、#保存配置文件并退出
:wq
docker restart gitlab
6、docker查看gitlab启动日志
docker logs -f gitlab
7、附上配置信息及截图:
# 配置http协议所使用的访问地址,不加端口号默认为80
external_url 'http://192.168.43.204'
# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '192.168.43.204'
gitlab_rails['gitlab_shell_ssh_port'] = 222
此时项目的仓库地址就变了。如果ssh端口地址不是默认的22,就会加上ssh:// 协议头
打开浏览器输入ip地址(因为我的gitlab端口为80,所以浏览器url不用输入端口号,如果端口号不是80,则打开为:ip:端口号)
用户名:(默认)root
密码:刚才设置的密码
输入用户名密码,登录即可
4、gitlab首页展示
下面我们就可以新建一个项目了,点击Create a project
双击git.exe安装git(一直点下一步,直到完成)
点击电脑桌面空白地方右键看到如下两行即安装成功
2、设置ssh
打开本地git bash,使用如下命令生成ssh公钥和私钥对
ssh-keygen -t rsa -C '[email protected]'
例如:
ssh-keygen -t rsa -C '[email protected]'
~表示用户目录,比如我的windows就是C:\Users\Administrator,并复制其中的内容
cat ~/.ssh/id_rsa.pub
打开gitlab,找到Profile Settings–>SSH Keys—>Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框
或者打开:C:\Users\Administrator.PC-20180929LWLP.ssh\找到id_rsa.pub打开,复制,粘贴即可
回到gitlab页面点击projects->your projects
新建一个文件夹,我在这里在我的电脑D盘下新建project文件夹,或者在你想把项目拉取/存放的目录下面
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
案例:
git config --global user.name "guobin_wb"
git config --global user.email "[email protected]"
git config --global --list
git clone ssh://[email protected]:222/root/gitlab-test.git
1、进入项目中
cd gitlab-test/
echo "test local project push remote rep" > gblf.txt
git status
注:
红色部分代表:需要提交的文件
红色变更文件只在工作区,尚未添加至暂存区
git add gblf.txt
注:
git add . :指所有变更的文件
git add 文件名 :指:单个变更文件
git add 文件名 文件名 :指多个变更文件
git commit -m "first commit project "
注:
git commit -am "first commit project "和上面的区别:
第二个可以省去git add 这个步骤
git push origin master
docker下gitlab安装配置使用(完整版)
参考链接:https://www.jianshu.com/p/080a962c35b6