diff --git a/doc/settings/configuration.md b/doc/settings/configuration.md
index 49fa04e1361027ae463e9873b76ea3d5612260e4_ZG9jL3NldHRpbmdzL2NvbmZpZ3VyYXRpb24ubWQ=..24d00507491dc435661a7339145aef17c21276cf_ZG9jL3NldHRpbmdzL2NvbmZpZ3VyYXRpb24ubWQ= 100644
--- a/doc/settings/configuration.md
+++ b/doc/settings/configuration.md
@@ -124,6 +124,17 @@
 Code you include into `/etc/gitlab/gitlab.rb` using `from_file` runs with `root` privileges when you run `sudo gitlab-ctl reconfigure`.
 Any configuration that is set in `/etc/gitlab/gitlab.rb` after `from_file` is included, takes precedence over the configuration from the included file.
 
+## Read certificate from file
+
+Certificates can be stored as separate files and loaded into memory when running `sudo gitlab-ctl reconfigure`. Files containing
+certificates must be plaintext.
+
+In this example, the PostgreSQL server certificate is read directly from a file rather than copy and pasting into the `gitlab.rb` directly.
+
+```ruby
+postgresql['internal_certificate'] = File.read('/path/to/server.crt')
+```
+
 ## Store Git data in an alternative directory
 
 By default, Omnibus GitLab stores the Git repository data under