前情提要
公司内部一直都是用svn。由于项目的加入新成员。代码质量不稳。但项目可能随时要更新。
处于管理组员代码方便性考虑,由于公司暂时没考虑环git,暂时在公司内部搭建个gitlab项目组自用。
步骤
搭建Docker环境
删除旧版本的 docker
1yum remove docker docker-common docker-selinux docker-engine增加 docker yum 源
1234yum install -y yum-utils device-mapper-persistent-data lvm2yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repoyum-config-manager --enable docker-ce-edgeyum-config-manager --enable docker-ce-test可直接下载Dokcer最新版
1yum install docker-ce也可查看所有有效版本
1yum list docker-ce --showduplicates | sort -r自定义 docker 配置:graph 定义 docker 运行的目录, registry-mirrors 定义了 docker 获取镜像的仓库的地址。
1234567mkdir /etc/dockervi /etc/docker/daemon.json{"graph":"/u1/docker","registry-mirrors": ["http://hub-mirror.c.163.com"]}启动 docker
12systemctl enable docker //设置开机自动启动systemctl start docker查看 docker信息
1docker info

安装 Portainer – docker可视化工具
拉取最新镜像
1docker pull docker.io/portainer/portainer运行
12345docker run -d -p 9000:9000 \--restart=always \-v /var/run/docker.sock:/var/run/docker.sock \--name prtainer-test \docker.io/portainer/portainer
安装 Gitlab
获取最新镜像
1docker pull gitlab/gitlab-ce:latest查看docker镜像可选择中文镜像
1docker search gitlab查看磁盘空间大小,选择适合的持久化容器数据的存放位置。
1df -h运行
12345678docker run \--restart=always \--publish 4443:443 --publish 8089:80 --publish 2222:22 \--name gitlab \--volume /u1/gitlab-ce/config:/etc/gitlab \--volume /u1/gitlab-ce/logs:/var/log/gitlab \--volume /u1/gitlab-ce/data:/var/opt/gitlab \gitlab/gitlab-ce修改external_url
1234567891. 方法一:cd /u1/gitlab/config/vi gitlab.rb2. 方法二:docker exec it gitlab //进入容器内部cd /etc/gitlab/vi gitlab.rbgitlab-ctl restart/external_url --进入编辑模式可通过斜杆搜索,修改成:external_url 'http://IP'
同时使用Github和本地Gitlab
生成密钥
12在~/.ssh/目录会生成gitlab_id-rsa和gitlab_id-rsa.pub私钥和公钥。我们将gitlab_id-rsa.pub中的内容粘帖到公司GitLab服务器的SSH-key的配置中。$ ssh-keygen -t rsa -C "注册的gitlab邮箱" -f ~/.ssh/gitlab_id-rsa添加config
12cd ~/.sshtouch configconfig内容例如:
123456789101112Host github.comPort 22User gitHostName github.comPreferredAuthentications publickeyIdentityFile ~/.ssh/github_id-rsaHost gitlab //当指定gitlab则项目的git@IP:test/test.git的IP要相应替换成gitlabPort 2222User gitHostName IPPreferredAuthentications publickeyIdentityFile ~/.ssh/gitlab_id-rsa校验是否可以连接成功
1ssh -T git@gitlab- 项目指定账户和邮箱 12git config - -local user.name "用户名"<br>git config - -local user.email "邮箱"