Docker创建GitLab,实现Http和Ssh pull和push
Docker创建GitLab前置条件有一台服务器(虚拟机也可以)docker基本操作(不会也可以)1.创建存放数据目录文件夹mkdir -p /usr/data/docker/gitlab2.搜索gitlab镜像docker search gitlab-ce3.启动镜像并且端口映射以及文件目录挂载docker run -d\-p 8443:443-p 48080:80 -p 8022:22 --n
·
Docker创建GitLab
前置条件
- 有一台服务器(虚拟机也可以)
- docker基本操作(不会也可以)
1.创建存放数据目录文件夹
mkdir -p /usr/data/docker/gitlab
2.搜索gitlab镜像
docker search gitlab-ce
3.启动镜像并且端口映射以及文件目录挂载
docker run -d \
-p 8443:443 -p 48080:80 -p 8022:22 --name=gitlab --restart always \
-v /usr/data/docker/gitlab/config:/etc/gitlab \
-v /usr/data/docker/gitlab/logs:/var/log/gitlab \
-v /usr/data/docker/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce
其中 443映射到宿主机8443,80可视化页面端口映射到48080,22 ssh链接端口映射到8022上面,没有下载镜像,启动时候将会自动下载
4.查看容器运行状态
一直重启多半是内存不够,gitlab官网建议不低于2G,其他情况,百度多查查
5.浏览器访问
因为将容器的80端口映到了 48080,所以ip+48080访问,记得防火墙关掉,或者把这些端口都放开,如果服务器是阿里云或者其他的需要在安全策略组那里把端口放出来
6.输入新密码,然后新建一个项目
7.添加ssh公钥
8.出现问题
新建项目后我们发现,ReadMe.md一直加载中,点进去的话url前缀不是我们的ip,是一串随机码
我们将随机码换成我们的ip+端口就可以了,所以问题就定为到了
9.修改GitLab配置
(1).进入容器内部
docker exec -it gitlab /bin/bash
(2).编辑配置文件(gitlab.rb),末尾新增 两行
vim /etc/gitlab/gitlab.rb
gitlab_rails['gitlab_shell_ssh_port'] = 8022
external_url 'http://39.98.194.220'
其中 变动的是 8022 ssh的端口 ,url换成自己的ip
(3).修改第二个配置文件(gitlab.yml)
vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
进行修改
(4).重启,必须在docker容器内部重启,退出容器,重启无效
cd /bin/
gitlab-ctl restart
10.查看效果
11.Http效果
12.ssh方式
结语
- 启动docker容器时候,一直重启,把文件挂载去掉,具体原因没有深究,自己玩的可以不在意,如果公司搭建的话,还是最好找找原因,本人第一次搭建时候可以正常文件挂载,后来测试时候有点问题
- 有问题多百度
- 本人QQ:872019874
- 记录文件链接: docker-gitlab.txt. 提取码:9j67
更多推荐
已为社区贡献1条内容
所有评论(0)