# Gitlab Install
OpenSuse 15.4
GitLab Enterprise Edition
Gitlab-EE
## Check OpenSuse Environment Specification
```
$ hostnamectl
```

## wget download gitlab
Copy wget link to opensuse and download
[https://packages.gitlab.com/gitlab/gitlab-ee
](https://packages.gitlab.com/gitlab/gitlab-ee
)

## rpm -Uvh install gitlab
```
$ rpm -Uvh gitlab-ee-xxxx
```
After install finish it will show this

## edit /etc/gitlab/gitlab.rb
```
To Edit gitlab.rb user vim
$ vim /etc/gitlab/gitlab.rb
```
### external_url
```rb
external_url 'https://gitlab.example.com'
```
### smtp
```rb
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp_address"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_domain'] = "smtp_address"
gitlab_rails['smtp_enable_starttls_auto'] = false
gitlab_rails['smtp_tls'] = false
gitlab_rails['smtp_ssl'] = false
gitlab_rails['smtp_force_ssl'] = false
gitlab_rails['smtp_openssl_verify_mode'] = 'none'
gitlab_rails['gitlab_email_from'] = 'smtp_address@mail.com'
gitlab_rails['gitlab_email_display_name'] = 'Gitlab'
gitlab_rails['gitlab_email_reply_to'] = 'smtp_address@mail.com'
```
### nginx
Enable when using https
```rb
nginx['enable'] = true
nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/gitlab/trusted-certs/samplecrt.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/trusted-certs/samplekey.key"
```
### custom ssl certificate
### After gitlab.rb edited run reconfigure
```
$ sudo gitlab-ctl reconfigure
```
## Make sure all status is running
```
$ sudo gitlab-ctl status
```

## Firewall setting
Open port for http or https
## Troubleshooting
### After upgrade Gitlab Server
[Reset CI/CD variables](https://docs.gitlab.com/ee/raketasks/backup_restore.html#reset-cicd-variables)
[Reset runner registration tokens](https://docs.gitlab.com/ee/raketasks/backup_restore.html#reset-runner-registration-tokens)
### Gitlab-runner error 500 when register
Error log Path: /var/log/gitlab/gitlab-rails/api_json.log

Error log
```json
"ua": "gitlab-runner 15.11.0 (15-11-stable; go1.19.6; windows/amd64)",
"route": "/api/:version/runners",
"exception.class": "OpenSSL::Cipher::CipherError",
"exception.message": "",
"exception.backtrace": [
"lib/gitlab/crypto_helper.rb:28:in `aes256_gcm_decrypt'",
"app/models/concerns/token_authenticatable_strategies/encryption_helper.rb:18:in `decrypt_token'",
"app/models/concerns/token_authenticatable_strategies/encrypted.rb:78:in `get_encrypted_token'",
"app/models/concerns/token_authenticatable_strategies/encrypted.rb:117:in `token_set?'",
"app/models/concerns/token_authenticatable_strategies/base.rb:40:in `ensure_token'",
"app/models/concerns/token_authenticatable_strategies/encrypted.rb:38:in `ensure_token'",
"app/models/concerns/token_authenticatable.rb:49:in `block in add_authentication_token_field'",
"lib/gitlab/database/load_balancing/connection_proxy.rb:120:in `public_send'",
"lib/gitlab/database/load_balancing/connection_proxy.rb:120:in `block in write_using_load_balancer'",
"lib/gitlab/database/load_balancing/load_balancer.rb:127:in `block in read_write'",
"lib/gitlab/database/load_balancing/load_balancer.rb:198:in `retry_with_backoff'",
"lib/gitlab/database/load_balancing/load_balancer.rb:116:in `read_write'",
"lib/gitlab/database/load_balancing/connection_proxy.rb:119:in `write_using_load_balancer'",
"lib/gitlab/database/load_balancing/connection_proxy.rb:71:in `transaction'",
"app/models/concerns/token_authenticatable_strategies/base.rb:53:in `reset_token!'",
"app/models/concerns/token_authenticatable_strategies/base.rb:46:in `ensure_token!'",
"app/models/concerns/token_authenticatable.rb:54:in `block in add_authentication_token_field'",
"app/models/application_setting_implementation.rb:457:in `runners_registration_token'",
"lib/gitlab/current_settings.rb:32:in `method_missing'",
"app/services/ci/runners/register_runner_service.rb:58:in `runner_registration_token_valid?'",
"app/services/ci/runners/register_runner_service.rb:45:in `check_token'",
"app/services/ci/runners/register_runner_service.rb:29:in `extract_runner_type_attrs'",
"app/services/ci/runners/register_runner_service.rb:7:in `execute'",
"ee/app/services/ee/ci/runners/register_runner_service.rb:12:in `execute'",
"lib/api/ci/runner.rb:54:in `block (2 levels) in <class:Runner>'",
"ee/lib/gitlab/middleware/ip_restrictor.rb:14:in `block in call'",
"ee/lib/gitlab/ip_address_state.rb:10:in `with'",
"ee/lib/gitlab/middleware/ip_restrictor.rb:13:in `call'",
"lib/api/api_guard.rb:222:in `call'",
"lib/gitlab/metrics/elasticsearch_rack_middleware.rb:16:in `call'",
"lib/gitlab/middleware/memory_report.rb:13:in `call'",
"lib/gitlab/middleware/speedscope.rb:13:in `call'",
"lib/gitlab/database/load_balancing/rack_middleware.rb:23:in `call'",
"lib/gitlab/middleware/rails_queue_duration.rb:33:in `call'",
"lib/gitlab/metrics/rack_middleware.rb:16:in `block in call'",
"lib/gitlab/metrics/web_transaction.rb:46:in `run'",
"lib/gitlab/metrics/rack_middleware.rb:16:in `call'",
"lib/gitlab/jira/middleware.rb:19:in `call'",
"lib/gitlab/middleware/go.rb:20:in `call'",
"lib/gitlab/etag_caching/middleware.rb:21:in `call'",
"lib/gitlab/middleware/query_analyzer.rb:11:in `block in call'",
"lib/gitlab/database/query_analyzer.rb:37:in `within'",
"lib/gitlab/middleware/query_analyzer.rb:11:in `call'",
"lib/gitlab/middleware/multipart.rb:173:in `call'",
"lib/gitlab/middleware/read_only/controller.rb:50:in `call'",
"lib/gitlab/middleware/read_only.rb:18:in `call'",
"lib/gitlab/middleware/same_site_cookies.rb:27:in `call'",
"lib/gitlab/middleware/handle_malformed_strings.rb:21:in `call'",
"lib/gitlab/middleware/basic_health_check.rb:25:in `call'",
"lib/gitlab/middleware/handle_ip_spoof_attack_error.rb:25:in `call'",
"lib/gitlab/middleware/request_context.rb:21:in `call'",
"lib/gitlab/middleware/webhook_recursion_detection.rb:15:in `call'",
"config/initializers/fix_local_cache_middleware.rb:11:in `call'",
"lib/gitlab/middleware/compressed_json.rb:37:in `call'",
"lib/gitlab/middleware/rack_multipart_tempfile_factory.rb:19:in `call'",
"lib/gitlab/middleware/sidekiq_web_static.rb:20:in `call'",
"lib/gitlab/metrics/requests_rack_middleware.rb:79:in `call'",
"lib/gitlab/middleware/release_env.rb:13:in `call'"
],
```
Error Solved: https://gitlab.com/gitlab-org/gitlab/-/issues/346383
Delete ApplicationSetting
```bash
gitlab-rails console
> ApplicationSetting.first.delete
> ApplicationSetting.first
=> nill
```