Problem record: vm-ubuntu 20.04 used NAT mode to connect at the beginning, and later changed to bridge mode. After the change, the gitlab service originally started with docker could not be cloned. It always prompted: fatal… There was no remote library. It was not solved. Later, the mapped directory, container and image were deleted and a new container was restarted, After configuration, SSH cloning can be performed, but HTTP cloning cannot be performed. When performing gitlab CI pipeline, you will be prompted with failed to connect to 192.168.xx.83 port 80: connection rejected
By trying the command: git clone http://192.168.1.83/liutaiqiang/test.git Unable to clone hint: failed to connect to 192.168.xx.83 port 80: connection rejected
By trying the command: git clone http://192.168.1.83:9001/liutaiqiang/test.git You can clone. Modify gitlab.yml under/SRV/gitlab/data/gitlab rails/etc, change port 80 to 9001, and restart gitlab service, which will change back to port 80
The problem is solved by modifying in the following ways
Custom port used
View the ID of the container
wmg@debian:~$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1132de0d1960 gitlab/gitlab-ce:latest "/assets/wrapper" 19 hours ago Up 2 minutes (healthy) 80/tcp, 443/tcp, 0.0.0.0:8081->8081/tcp, 0.0.0.0:10022->22/tcp gitlab
Remember the container ID
In order to prevent accidents, stop the container and docker before operation
docker stop gitlab
systemctl stop docker
We need to change the HTTP port to access 9001, and the address at the time of cloning is correct. The SSH port of gitlab is changed to 8022 of the host.
Modify host /Config.v2.json and hostconfig.json files under VaR/lib/docker/containers/container ID/
root@debian:~# cd /var/lib/docker/containers/1132de0d1960e1049a3f1f014b2ba215442a6c7f23f4983b324e055306822c52/
root@debian:/var/lib/docker/containers/1132de0d1960e1049a3f1f014b2ba215442a6c7f23f4983b324e055306822c52# ls
1132de0d1960e1049a3f1f014b2ba215442a6c7f23f4983b324e055306822c52-json.log checkpoints config.v2.json hostconfig.json hostname hosts mounts resolv.conf resolv.conf.hash
config.v2.json
hostconfig.json
Tips: if VIM editing is not formatted, the readability will be very poor. I copied the file locally and changed it with Notepad + +
Modify the gitlab configuration file/etc/gitlab/gitlab.rb in the container
Because I mapped/etc/gitlab to/backup/gitlab/config, I went directly to this directory to modify the gitlab.rb file, with the following parameters
external 'http://192.168.88.213:8081'
nginx['listen_port'] = 8081
gitlab_rails['gitlab_shell_ssh_port'] = 10022
After the change, just start the docker and container
systemctl start docker
docker start gitlab