docker pull gitlab/gitlab-ce

mkdir /root/data/gitlab/config /root/data/gitlab/logs /root/data/gitlab/data -p

docker run -d --name gitlab --restart always -p 8443:443 -p 80:80 -p 8822:22 -v /root/data/gitlab/config:/etc/gitlab
-v /root/data/gitlab/logs:/var/log/gitlab
-v /root/data/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce

docker exec -it gitlab bash
vi /root/data/gitlab/config/gitlab.rb

# 配置http协议所使用的访问地址,不加端口号默认为80
external_url 'http://127.0.0.1'

# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '127.0.0.1'
gitlab_rails['gitlab_shell_ssh_port'] = 8822 # 此端口是run时22端口映射的8822端口

设置ssh

本地git bash
$ ssh-keygen -t rsa -C 'xxx@xxx.com' #然后一路回车(-C 参数是你的邮箱地址)

# ~表示用户目录,比如我的windows就是C:\Users\Administrator,并复制其中的内容
$ cat ~/.ssh/id_rsa.pub

打开gitlab,找到Profile Settings-->SSH Keys--->Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框
07-23 12:12