Missing documentation for Omnibus Docker deployment and handling SSH port
Problem to solve
This is an issue with the documentation of Omnibus Docker deployment. The documentation contains suggestions to run the Docker container using a Docker command containing (among other options):
sudo docker run --publish 22:22 gitlab/gitlab-ce:latest
However, this will fail for most deployments on a server, where the port 22 is already used by sshd.
Further details
As noted in the documentation, this can be avoided by using the gitlab_shell_ssh_port option and using a different external SSH port. However, this will result in a situation when the administrator is forced to pick one of:
- Have the
git clonebehave as the developers expect, i.e. cloning on port22; but administrators have to SSH into the Linux machine via a non-standard SSH port - Keep using 22 as the SSH port for administering the Linux machine, but users are forced to
git clonefrom a non-standard port (which, aside from being annoying, will break existing scripts that rely on the standard port).
Proposal
I have spent some time searching for approaches to this problem, and found no solutions. It would be good to update the documentation with either:
- the way to be able to use the same port for both
git cloneand admin SSH access to the server - if the above is not possible, state that explicitly to save some time and uncertainty when deploying this way
I have migrated us from source-based deploy to Omnibus-in-Docker and previously I was able to both SSH and git clone from the port 22.