docker 搭建一个简单的gitlab,并可以实现ssh、http克隆仓库代码
一、官网地址:https://docs.gitlab.cn/jh/install/docker.html
二、步骤:
1.要求至少4个G
2. 先在linux主机创建一个gitlab的主目录,用于容器挂载:/srv/gitlab
3. 设置设置gitlab的环境变量(不设置也可以)
export GITLAB_HOME=/srv/gitlab
4. docker 启动镜像
sudo docker run --detach \
--publish 444:443 --publish 81:81 --publish 23:22 \
--name gitlab \
--restart always \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
--shm-size 256m \
registry.gitlab.cn/omnibus/gitlab-jh:latest
5. 通过sudo docker ps可以看到容器启动了:
三:默认的配置:不修改默认配置会出很多问题
1.所有的配置都在唯一的配置文件 /etc/gitlab/gitlab.rb
里
2. sudo docker exec -it gitlab editor /etc/gitlab/gitlab.rb 命令直接进入文件编辑页面,找到并修改三个地方:
a. external_url:默认是访问80端口,但我在映射时,用81端口进行映射了,所以这里就需要写成http://宿主机的ip:81端口,如果你是80端口进行映射,这里就不用写端口
b. 设置仓库拉取代码时ssh地址:这里设置为宿主机的IP即可
c.设置ssh的端口,我在启动命令时映射的是宿主机的23端口,因此这里要修改
3.让配置生效: sudo docker exec -it gitlab gitlab-ctl reconfigure
四:登录gitlab并配置
1. 访问路径:http://宿主机器的IP:81 启动需要时间,首次访问会报如下:
过一会儿可以看到:
2.初始化账号是root,初始化密码通过下面命令获取,24小时内有效:
sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
修改登录密码,登录后点击右上角头像那里
修改成中文显示:
3.配置SSH keys,我的gitlab部署在linux,现在我用windows系统访问
在gitlab中配置好:
4.在gitlab创建一个项目
gitlab常用命令