GITLAB_OMNIBUS_CONFIG 环境变量不起作用?

Posted

技术标签:

【中文标题】GITLAB_OMNIBUS_CONFIG 环境变量不起作用?【英文标题】:GITLAB_OMNIBUS_CONFIG env variable not working? 【发布时间】:2021-11-13 18:08:18 【问题描述】:

我正在按照指南使用来自here 的 docker 安装 gitlab。

我在设置 gitlab 的 docker install 时提供了如下环境变量:

GITLAB_OMNIBUS_CONFIG="external_url 'http://gitlab.example.com/'; gitlab_rails['gitlab_shell_ssh_port'] = 30022; puma['worker_processes'] = 0; sidekiq['max_concurrency'] = 10; prometheus_monitoring['enable'] = false; postgresql['shared_buffers'] = '256MB'; gitaly['cgroups_count'] = 2; gitaly['cgroups_mountpoint'] = '/sys/fs/cgroup'; gitaly['cgroups_hierarchy_root'] = 'gitaly'; gitaly['cgroups_memory_enabled'] = true; gitaly['cgroups_memory_limit'] = 250000; gitaly['cgroups_cpu_enabled'] = true; gitaly['cgroups_cpu_shares'] = 512; gitaly['concurrency'] = [  'rpc' => '/gitaly.SmartHTTPService/PostReceivePack', 'max_per_repo' => 3 ,  'rpc' => '/gitaly.SSHService/SSHUploadPack', 'max_per_repo' => 3  ]; gitaly['env'] =  'LD_PRELOAD' => '/opt/gitlab/embedded/lib/libjemalloc.so', 'MALLOC_CONF' => 'dirty_decay_ms:1000,muzzy_decay_ms:1000', 'GITALY_COMMAND_SPAWN_MAX_PARALLEL' => '2' ; gitlab_rails['time_zone'] = 'GMT'; gitlab_rails['display_initial_root_password'] = true;"

如果您想知道这是从哪里来的?见here。

docker install 工作正常,我可以访问 Gitlab GUI。

如您所见,我设置了gitlab_rails['display_initial_root_password'] 选项。但是当我尝试获取初始密码时,它会在容器logs 中提供以下内容:

password: *** - You opted not to display initial root password to STDOUT.

这让我想知道提供环境变量GITLAB_OMNIBUS_CONFIG 是否有任何不同?我该如何检查? 我想让这些设置永久化。最好的方法是什么?如何使上述设置永久化?

PS 我正在使用k3s 将它部署在rancher 2.6 上,如果这样会有所不同吗?

谢谢

【问题讨论】:

【参考方案1】:

永久更改设置的最简单方法是编辑gitlab.rb 文件。该文件是在您启动容器时首次创建的。

【讨论】:

以上是关于GITLAB_OMNIBUS_CONFIG 环境变量不起作用?的主要内容,如果未能解决你的问题,请参考以下文章

在java中获取环境变量值

安装maven和glassfish及配置环境变

生产环境服务器变慢

生产环境服务器变慢,诊断思路和性能评估

Linux编程 11(shell全局环境变量与局变环境变量)

Unix环境高级编程编写变长参数函数