在Docker下运行GitLab的注意事项
由于Docker技术的快速发展,很多著名的开源应用都提供了Docker版本,但由于某些原因,一些知名应用提供的Docker运行语句存在一定的问题。
今天就遇到了Docker下运行Gitlab的巨坑。
Docker官方的页面原文是这样的:
sudo 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
这个坑的点在 --publish 22:22
这里。这个命令参数的意思是把主机的22
端口映射到 gitlab
镜像的22
端口以提供SSH
服务,但宿主机本身也需要22
端口提供SSH服务。
我开始运行的时候没有注意到这一点,运行以上命令的时候提示22
端口不可用,于是直接把22
改成了33
,于是镜像顺利运行了。但是在gitlab
账户设置中添加公钥以后,使用git
客户端通过SSH
协议([email protected])拉取代码的时候始终提示输入密码,输入密码又提示没权限,折腾了很久,重启了无数次镜像,终于发现问题所在。
修改宿主机sshd
端口为88
,使用firewall-cmd --zone=public --add-port=88/tcp --permanent
新增端口,然后systemctl restart sshd
,然后清空客户端上的known_hosts
,重新clone,顺利成功。
相关推荐
cxin 2020-11-06
synshitou 2020-10-21
Topbeyond 2020-08-21
happyfreeangel 2020-07-27
白开水 2020-07-19
无风的雨 2020-07-08
贤时间 2020-07-06
wishli 2020-06-28
小信 2020-06-21
leehbhs 2020-06-20
happyfreeangel 2020-06-18
83284950 2020-06-17
冯冯领队 2020-06-16
就是那个胖子 2020-06-14
83284950 2020-06-14
LiHansiyuan 2020-06-14
fcds00 2020-06-11
就是那个胖子 2020-06-11