# Gitlab Configuration

## Gitlab IP Or DNS Address

edit .env file and define external url IP or DNS, it should solve problems with issue routing, try like that (for example):

```bash
GITLAB_IP_OR_DNS="http://192.168.1.103"
```

instead:

```bash
GITLAB_IP_OR_DNS="http://0.0.0.0"
```

## SSH Config

Add these lines into ~/.ssh/config file (If you want push / pull from remote you must define machine IP instead 0.0.0.0):

```bash
Host gitlab
  HostName 192.168.1.103
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/git_accesses
  Port 2222
```

And you can use gitlab like that (after append SSH key in Gtilab GUI):

```bash
git clone git@gitlab:devops-things/docker_images.git 
```

## Gitlab Runners Config

run ```configure.runners.sh``` at once (on first run), this script will configure runners for concrete gitlab repo (becouse ```RUNNER_REGISTRATION_TOKEN``` is identity of particular repo) -> remember that ```RUNNER_REGISTRATION_TOKEN``` is defined in ```.env``` file, just change it on your repo token.

gitlab will remember what runner is already registered, and re-register is useless action in this case.

## Gitlab Container Registry

you can defined docker registry url in ```GITLAB_OMNIBUS_CONFIG```, by default registry ist defined like that:

```yaml
registry_external_url 'http://docker-registry:5000/'
```

```docker-registry``` is registry container DNS address (inner network defined by docker)

Remember that if you want define external registry worked on HTTPS (with SSL), you must use ```https://``` protocol instead default ```http://``` protocol.

sources:

https://sleeplessbeastie.eu/2020/06/29/how-to-enable-gitlab-container-registry/

## Github importer

when you want import your github repos, you have to create access-token and paste it on ```project import``` form. In next step you can choose what repo you want import exactl.