前提:操作基于centos7,已安装docker
安装步骤如下:
1、拉取镜像
docker pull gitlab/gitlab-ce:latest
2、修改映射 sshd默认22端口(防止后面gitlab跑容器的时候报22端口占用异常)
将其中的 #Port 22 注释去掉,将数字 22 更改为 322(随意一个)
注意:以后使用xshell等工具连接虚拟机要用该端口连
vim /etc/ssh/sshd_config
修改后保存
3、开放322端口
semanage port -a -t ssh_port_t -p tcp 322
firewall-cmd --permanent --add-port=322/tcp
firewall-cmd --reload
4、重启sshd
systemctl restart sshd
5、run gitlab容器
docker run \
--publish 443:443 --publish 80:80 --publish 22:22 \
--volume /opt/gitlab/config:/etc/gitlab \
--volume /opt/gitlab/logs:/var/log/gitlab \
--volume /opt/gitlab/data:/var/opt/gitlab \
--privileged=true \
--name gitlab \
gitlab/gitlab-ce
备:也可以不改sshd的22,这里22改成其他端口(不建议,后面gitlab使用都要带上自定义端口,不方便)
浏览器输入ip,重置管理员密码,注册用户…(略)
http和ssh两种拉取方式
一、通过http拉取
普通方式
git clone httpurl
指定用户名秘钥方式
git clone http://username:password@remote
例:git clone http://eddy:xxxx@ip/eddy/test.git
二、配置ssh方式拉取
1、在git bash窗口执行
win本地用户
ssh-keygen -t rsa
*(其他)邮箱用户
ssh-keygen -t rsa -C “your email”
cat /root/.ssh/id_rsa.pub
验证:ssh -T git@github.com
2、在gitlab setting添加ssh(一般在当前用户目录下.ssh/id_rsa.pub)
3、在bash执行拉取
git clone sshurl
解决gitlab项目拷贝链接出现ip乱码问题
修改gitlab配置文件目录下gitlab.rb文件 添加external_url ‘http://ip’
vim /opt/gitlab/config/gitlab.rb
注意:我这里用的是docker宿主目录映射,所以是/opt/gitlab/config目录
正常情况下是在/etc/gitlab/gitlab.rb这个目录下