From 02ecf32afe05819e6cb58fb69d90d5d5ffe27546 Mon Sep 17 00:00:00 2001 From: "blink-so[bot]" <211532188+blink-so[bot]@users.noreply.github.com> Date: Fri, 29 Aug 2025 09:34:44 -0500 Subject: [PATCH] docs: replace offline deployments terminology to air-gapped (#19625) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This PR comprehensively updates the offline deployments documentation to use more precise "air-gapped" terminology and improves consistency throughout the documentation. ## Changes Made ### Terminology Updates - **Title**: Changed from "Offline Deployments" to "Air-gapped Deployments" - **Summary**: Updated to prioritize "air-gapped" terminology and added "disconnected" to cover additional deployment scenarios - **Content**: Updated tutorial references to use "air-gapped" instead of "offline" - **Section headers**: - Changed "Offline container images" to "Air-gapped container images" - Changed "Offline docs" to "Air-gapped docs" - **Table headers**: Changed "Offline deployments" to "Air-gapped deployments" ### Navigation & URL Structure - **Navigation title**: Updated `docs/manifest.json` to show "Air-gapped Deployments" in sidebar - **Navigation description**: Updated to "Run Coder in air-gapped / disconnected / offline environments" - **File rename**: `docs/install/offline.md` → `docs/install/airgap.md` for consistency - **URL change**: `/install/offline` → `/install/airgap` - **Subsection anchors**: - `/install/offline#offline-docs` → `/install/airgap#airgap-docs` - `/install/offline#offline-container-images` → `/install/airgap#airgap-container-images` ### Internal Links & References Updated all internal documentation links: - `docs/admin/integrations/index.md` - `docs/admin/networking/index.md` - `docs/changelogs/v0.27.0.md` (including anchor reference) - `docs/tutorials/faqs.md` ### Backward Compatibility - **Redirects**: Added `docs/_redirects` with 301 redirects: - `/install/offline` → `/install/airgap` - `/install/offline#offline-docs` → `/install/airgap#airgap-docs` - `/install/offline#offline-container-images` → `/install/airgap#airgap-container-images` - **Content**: Maintains "offline" in the description for broader understanding - **Deep links**: All subsection anchors redirect properly to maintain existing bookmarks ## Rationale - **"Air-gapped"** is more precise and commonly used in enterprise/security contexts - **"Disconnected"** covers additional scenarios where networks may be temporarily or partially isolated - **Consistency** ensures filename, URL, navigation, content, and subsection anchors all align with the same terminology - **Backward compatibility** maintained through comprehensive redirects to prevent broken links at any level ## Testing - [x] Verified all internal links point to the new URL structure - [x] Confirmed navigation title updates correctly - [x] Ensured content accuracy is maintained - [x] Added redirects for backward compatibility (main page + subsections) - [x] Updated all cross-references in related documentation - [x] Verified subsection anchor redirects work properly - [x] Confirmed no unnecessary .md file redirects ## Result Complete terminology consistency across: - ✅ Page title and headers - ✅ Navigation and breadcrumbs - ✅ File names and URL structure - ✅ Internal documentation links - ✅ Table headers and section titles - ✅ Subsection anchors and deep links - ✅ Backward compatibility via comprehensive redirects --------- Co-authored-by: blink-so[bot] <211532188+blink-so[bot]@users.noreply.github.com> Co-authored-by: david-fraley <67079030+david-fraley@users.noreply.github.com> --- docs/_redirects | 6 ++++++ docs/admin/integrations/index.md | 2 +- docs/admin/integrations/jfrog-artifactory.md | 4 ++-- docs/admin/networking/index.md | 6 +++--- docs/changelogs/v0.27.0.md | 2 +- docs/changelogs/v2.8.0.md | 2 +- docs/install/{offline.md => airgap.md} | 16 +++++++--------- docs/manifest.json | 6 +++--- docs/tutorials/faqs.md | 2 +- 9 files changed, 25 insertions(+), 21 deletions(-) create mode 100644 docs/_redirects rename docs/install/{offline.md => airgap.md} (97%) diff --git a/docs/_redirects b/docs/_redirects new file mode 100644 index 0000000000..fdfc401f09 --- /dev/null +++ b/docs/_redirects @@ -0,0 +1,6 @@ +# Redirect old offline deployments URL to new airgap URL +/install/offline /install/airgap 301 + +# Redirect old offline anchor fragments to new airgap anchors +/install/offline#offline-docs /install/airgap#airgap-docs 301 +/install/offline#offline-container-images /install/airgap#airgap-container-images 301 diff --git a/docs/admin/integrations/index.md b/docs/admin/integrations/index.md index 900925bd2d..3a1a11f244 100644 --- a/docs/admin/integrations/index.md +++ b/docs/admin/integrations/index.md @@ -13,6 +13,6 @@ our [installation guides](../../install/index.md). The following resources may help as you're deploying Coder. - [Coder packages: one-click install on cloud providers](https://github.com/coder/packages) -- [Deploy Coder offline](../../install/offline.md) +- [Deploy Coder Air-gapped](../../install/airgap.md) - [Supported resources (Terraform registry)](https://registry.terraform.io) - [Writing custom templates](../templates/index.md) diff --git a/docs/admin/integrations/jfrog-artifactory.md b/docs/admin/integrations/jfrog-artifactory.md index 702bce2599..06f0bc670f 100644 --- a/docs/admin/integrations/jfrog-artifactory.md +++ b/docs/admin/integrations/jfrog-artifactory.md @@ -129,9 +129,9 @@ To set this up, follow these steps: If you don't want to use the official modules, you can read through the [example template](https://github.com/coder/coder/tree/main/examples/jfrog/docker), which uses Docker as the underlying compute. The same concepts apply to all compute types. -## Offline Deployments +## Air-Gapped Deployments -See the [offline deployments](../templates/extending-templates/modules.md#offline-installations) section for instructions on how to use Coder modules in an offline environment with Artifactory. +See the [air-gapped deployments](../templates/extending-templates/modules.md#offline-installations) section for instructions on how to use Coder modules in an offline environment with Artifactory. ## Next Steps diff --git a/docs/admin/networking/index.md b/docs/admin/networking/index.md index 4ab3352b2c..87cbcd7775 100644 --- a/docs/admin/networking/index.md +++ b/docs/admin/networking/index.md @@ -116,12 +116,12 @@ If a direct connection is not available (e.g. client or server is behind NAT), Coder will use a relayed connection. By default, [Coder uses Google's public STUN server](../../reference/cli/server.md#--derp-server-stun-addresses), but this can be disabled or changed for -[offline deployments](../../install/offline.md). +[Air-gapped deployments](../../install/airgap.md). ### Relayed connections By default, your Coder server also runs a built-in DERP relay which can be used -for both public and [offline deployments](../../install/offline.md). +for both public and [Air-gapped deployments](../../install/airgap.md). However, our Wireguard integration through Tailscale has graciously allowed us to use @@ -135,7 +135,7 @@ coder server --derp-config-url https://controlplane.tailscale.com/derpmap/defaul #### Custom Relays If you want lower latency than what Tailscale offers or want additional DERP -relays for offline deployments, you may run custom DERP servers. Refer to +relays for air-gapped deployments, you may run custom DERP servers. Refer to [Tailscale's documentation](https://tailscale.com/kb/1118/custom-derp-servers/#why-run-your-own-derp-server) to learn how to set them up. diff --git a/docs/changelogs/v0.27.0.md b/docs/changelogs/v0.27.0.md index a37997f942..5e06e5a028 100644 --- a/docs/changelogs/v0.27.0.md +++ b/docs/changelogs/v0.27.0.md @@ -25,7 +25,7 @@ Agent logs can be pushed after a workspace has started (#8528) - Template version messages (#8435) 252772262-087f1338-f1e2-49fb-81f2-358070a46484 - TTL and max TTL validation increased to 30 days (#8258) -- [Self-hosted docs](https://coder.com/docs/install/offline#offline-docs): +- [Self-hosted docs](https://coder.com/docs/install/airgap#airgap-docs): Host your own copy of Coder's documentation in your own environment (#8527) (#8601) - Add custom coder bin path for `config-ssh` (#8425) diff --git a/docs/changelogs/v2.8.0.md b/docs/changelogs/v2.8.0.md index e7804ab57b..1b17ba3a73 100644 --- a/docs/changelogs/v2.8.0.md +++ b/docs/changelogs/v2.8.0.md @@ -83,7 +83,7 @@ ### Documentation -- Using coder modules in offline deployments (#11788) (@matifali) +- Using coder modules in air-gapped deployments (#11788) (@matifali) - Simplify JFrog integration docs (#11787) (@matifali) - Add guide for azure federation (#11864) (@ericpaulsen) - Fix example template README 404s and semantics (#11903) (@ericpaulsen) diff --git a/docs/install/offline.md b/docs/install/airgap.md similarity index 97% rename from docs/install/offline.md rename to docs/install/airgap.md index 289780526f..cb2f2340a6 100644 --- a/docs/install/offline.md +++ b/docs/install/airgap.md @@ -1,12 +1,10 @@ -# Offline Deployments - -All Coder features are supported in offline / behind firewalls / in air-gapped -environments. However, some changes to your configuration are necessary. +# Air-gapped Deployments +All Coder features are supported in air-gapped / behind firewalls / disconnected / offline. This is a general comparison. Keep reading for a full tutorial running Coder -offline with Kubernetes or Docker. +air-gapped with Kubernetes or Docker. -| | Public deployments | Offline deployments | +| | Public deployments | Air-gapped deployments | |--------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | Terraform binary | By default, Coder downloads Terraform binary from [releases.hashicorp.com](https://releases.hashicorp.com) | Terraform binary must be included in `PATH` for the VM or container image. [Supported versions](https://github.com/coder/coder/blob/main/provisioner/terraform/install.go#L23-L24) | | Terraform registry | Coder templates will attempt to download providers from [registry.terraform.io](https://registry.terraform.io) or [custom source addresses](https://developer.hashicorp.com/terraform/language/providers/requirements#source-addresses) specified in each template | [Custom source addresses](https://developer.hashicorp.com/terraform/language/providers/requirements#source-addresses) can be specified in each Coder template, or a custom registry/mirror can be used. More details below | @@ -16,7 +14,7 @@ offline with Kubernetes or Docker. | Telemetry | Telemetry is on by default, and [can be disabled](../reference/cli/server.md#--telemetry) | Telemetry [can be disabled](../reference/cli/server.md#--telemetry) | | Update check | By default, Coder checks for updates from [GitHub releases](https://github.com/coder/coder/releases) | Update checks [can be disabled](../reference/cli/server.md#--update-check) | -## Offline container images +## Air-gapped container images The following instructions walk you through how to build a custom Coder server image for Docker or Kubernetes @@ -214,9 +212,9 @@ coder: -## Offline docs +## Air-gapped docs -Coder also provides offline documentation in case you want to host it on your +Coder also provides air-gapped documentation in case you want to host it on your own server. The docs are exported as static files that you can host on any web server, as demonstrated in the example below: diff --git a/docs/manifest.json b/docs/manifest.json index d2cd11ace6..9359fb6f1d 100644 --- a/docs/manifest.json +++ b/docs/manifest.json @@ -154,9 +154,9 @@ ] }, { - "title": "Offline Deployments", - "description": "Run Coder in offline / air-gapped environments", - "path": "./install/offline.md", + "title": "Air-gapped Deployments", + "description": "Run Coder in air-gapped / disconnected / offline environments", + "path": "./install/airgap.md", "icon_path": "./images/icons/lan.svg" }, { diff --git a/docs/tutorials/faqs.md b/docs/tutorials/faqs.md index bd386f8128..a2f350b45a 100644 --- a/docs/tutorials/faqs.md +++ b/docs/tutorials/faqs.md @@ -332,7 +332,7 @@ References: ## Can I run Coder in an air-gapped or offline mode? (no Internet)? Yes, Coder can be deployed in -[air-gapped or offline mode](../install/offline.md). +[air-gapped or offline mode](../install/airgap.md). Our product bundles with the Terraform binary so assume access to terraform.io during installation. The docs outline rebuilding the Coder container with