运维开发网

使用docker运行GitLab

运维开发网 https://www.qedev.com 2020-07-09 09:29 出处:网络 作者:运维开发网整理
从docker镜像拉取代码,docker pull gitlab/gitlab-ce:latest. 创建/srv/gitlab目录sudo mkdir /srv/gitlab 启动GitLab CE容器,并发布访问SSH,HTTP,HTTPS的端口. 所有GitLab数据将存储在/srv/gitlab目录. 如果只在本机测试,把hostname改为本机IP地址,(如果是在虚拟机中启动,主机测试,

docker镜像拉取代码,docker pull gitlab/gitlab-ce:latest.

创建/srv/gitlab目录sudo mkdir /srv/gitlab

启动GitLab CE容器,并发布访问SSH,HTTP,HTTPS的端口.

所有GitLab数据将存储在/srv/gitlab目录.

如果只在本机测试,把hostname改为本机IP地址,(如果是在虚拟机中启动,主机测试,把IP地址设置为虚拟机ip地址).如果让外部系统访问则改为外网IP.

docker run --detach --hostname gitlab.example.com --publish 443:443 --publish 80:80 --publish 22:22 --name gitlab --restart always --volume /srv/gitlab/config:/etc/gitlab --volume /srv/gitlab/logs:/var/log/gitlab --volume /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest

如果开启了seLinux,运行下面的代码:

docker run --detach --hostname gitlab.example.com --publish 443:443 --publish 80:80 --publish 22:22 --name gitlab --restart always --volume /srv/gitlab/config:/etc/gitlab:Z --volume /srv/gitlab/logs:/var/log/gitlab:Z --volume /srv/gitlab/data:/var/opt/gitlab:Z gitlab/gitlab-ce:latest

--restart always: 系统重启后,容器启动

确保docker有足够的权限在挂在的卷中创建文件.

边间GitLab配置文件,可以打开一个shellsudo docker exec -it gitlab /bin/bash,或者直接编辑文件sudo docker exec -it gitlab vi /etc/gitlab/gitlab.rb

在浏览器中输入gitlab所在服务器的IP地址,初次使用需要修改密码.

生成keyssh-keygen -t rsa -C "email",将key添加到gitlab上。

配置.ssh目录和文件的权限

chmod 755 ~/.ssh/ chmod 600 ~/.ssh/id_rsa ~/.ssh/id_rsa.pub chmod 644 ~/.ssh/known_hosts

权限过高会出错。

免密码登录

//将文件拷贝至远程服务器

scp ~/.ssh/id_rsa.pub [email protected]<remote_ip>:pub_key

//将内容追加到authorized_keys文件中, 不过要登录远程服务器来执行这条命令

cat ~/pub_key >>~/.ssh/authorized_keys

编辑/etc/ssh/sshd_config文件,将PubkeyAuthentication yes行和AuthorizedKeysFile .ssh/authorized_keys的注释删掉.重启sshd服务.

0

精彩评论

暂无评论...
验证码 换一张
取 消