mirror of
https://github.com/coder/coder.git
synced 2025-07-09 11:45:56 +00:00
docs: reorganize and edit docs README (#14706)
Edit the docs readme for consistency and better flow --------- Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Co-authored-by: Muhammad Atif Ali <atif@coder.com>
This commit is contained in:
197
docs/README.md
197
docs/README.md
@ -1,116 +1,145 @@
|
|||||||
# About Coder
|
# About
|
||||||
|
|
||||||
<!-- Warning for docs contributors: The first route in manifest.json must be titled "About" for the static landing page to work correctly. -->
|
<!-- Warning for docs contributors: The first route in manifest.json must be titled "About" for the static landing page to work correctly. -->
|
||||||
|
|
||||||
Coder is an open-source platform for creating and managing developer workspaces
|
Coder is a self-hosted, open source, cloud development environment that works
|
||||||
on your preferred clouds and servers.
|
with any cloud, IDE, OS, Git provider, and IDP.
|
||||||
|
|
||||||
<p align="center">
|
_Screenshots of Coder workspaces and connections_
|
||||||
<img src="./images/hero-image.png">
|
|
||||||
</p>
|
|
||||||
|
|
||||||
By building on top of common development interfaces (SSH) and infrastructure
|
Coder is built on common development interfaces and infrastructure tools to
|
||||||
tools (Terraform), Coder aims to make the process of **provisioning** and
|
make the process of provisioning and accessing remote workspaces approachable
|
||||||
**accessing** remote workspaces approachable for organizations of various sizes
|
for organizations of various sizes and stages of cloud-native maturity.
|
||||||
and stages of cloud-native maturity.
|
|
||||||
|
|
||||||
<blockquote class="warning">
|
## IDE support
|
||||||
<p>
|
|
||||||
If you are a Coder v1 customer, view <a href="https://coder.com/docs/coder">the docs</a> or <a href="https://coder.com/docs/coder/latest/guides/v2-faq">the sunset plans</a>.
|
|
||||||
</p>
|
|
||||||
</blockquote>
|
|
||||||
|
|
||||||
## How it works
|

|
||||||
|
|
||||||
Coder workspaces are represented with Terraform, but no Terraform knowledge is
|
You can use:
|
||||||
required to get started. We have a
|
|
||||||
[database](https://registry.coder.com/templates) of pre-made templates built
|
|
||||||
into the product.
|
|
||||||
|
|
||||||
<p align="center">
|
- Any Web IDE, such as
|
||||||
<img src="./images/providers-compute.png">
|
|
||||||
</p>
|
|
||||||
|
|
||||||
Coder workspaces don't stop at compute. You can add storage buckets, secrets,
|
- [code-server](https://github.com/coder/code-server)
|
||||||
sidecars and whatever else Terraform lets you dream up.
|
- [JetBrains Projector](https://github.com/JetBrains/projector-server)
|
||||||
|
- [Jupyter](https://jupyter.org/)
|
||||||
|
- And others
|
||||||
|
|
||||||
[Learn more about templates.](./admin/templates/index.md)
|
- Your existing remote development environment:
|
||||||
|
|
||||||
## IDE Support
|
- [JetBrains Gateway](https://www.jetbrains.com/remote-development/gateway/)
|
||||||
|
- [VS Code Remote](https://code.visualstudio.com/docs/remote/ssh-tutorial)
|
||||||
|
- [Emacs](./user-guides/workspace-access/emacs-tramp.md)
|
||||||
|
|
||||||
You can use any [Web IDE](./admin/templates/extending-templates/web-ides.md)
|
- A file sync such as [Mutagen](https://mutagen.io/)
|
||||||
([code-server](https://github.com/coder/code-server),
|
|
||||||
[projector](https://github.com/JetBrains/projector-server),
|
|
||||||
[Jupyter](https://jupyter.org), etc.),
|
|
||||||
[JetBrains Gateway](https://www.jetbrains.com/remote-development/gateway/),
|
|
||||||
[VS Code Remote](https://code.visualstudio.com/docs/remote/ssh-tutorial) or even
|
|
||||||
a file sync such as [mutagen](https://mutagen.io/).
|
|
||||||
|
|
||||||
<p align="center">
|
|
||||||
<img src="./images/ide-icons.svg" height=72>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
## Why remote development
|
## Why remote development
|
||||||
|
|
||||||
Migrating from local developer machines to workspaces hosted by cloud services
|
Remote development offers several benefits for users and administrators, including:
|
||||||
is an
|
|
||||||
[increasingly common solution for developers](https://blog.alexellis.io/the-internet-is-my-computer/)
|
|
||||||
and
|
|
||||||
[organizations alike](https://slack.engineering/development-environments-at-slack).
|
|
||||||
There are several benefits, including:
|
|
||||||
|
|
||||||
- **Increased speed:** Server-grade compute speeds up operations in software
|
- **Increased speed**
|
||||||
development, such as IDE loading, code compilation and building, and the
|
|
||||||
running of large workloads (such as those for monolith or microservice
|
|
||||||
applications)
|
|
||||||
|
|
||||||
- **Easier environment management:** Tools such as Terraform, nix, Docker,
|
- Server-grade cloud hardware speeds up operations in software development, from
|
||||||
devcontainers, and so on make developer onboarding and the troubleshooting of
|
loading the IDE to compiling and building code, and running large workloads
|
||||||
development environments easier
|
such as those for monolith or microservice applications.
|
||||||
|
|
||||||
- **Increase security:** Centralize source code and other data onto private
|
- **Easier environment management**
|
||||||
servers or cloud services instead of local developer machines
|
|
||||||
|
|
||||||
- **Improved compatibility:** Remote workspaces share infrastructure
|
- Built-in infrastructure tools such as Terraform, nix, Docker, Dev Containers, and others make it easier to onboard developers with consistent environments.
|
||||||
configuration with other development, staging, and production environments,
|
|
||||||
reducing configuration drift
|
|
||||||
|
|
||||||
- **Improved accessibility:** Devices such as lightweight notebooks,
|
- **Increased security**
|
||||||
Chromebooks, and iPads can connect to remote workspaces via browser-based IDEs
|
|
||||||
or remote IDE extensions
|
- Centralize source code and other data onto private servers or cloud services instead of local developers' machines.
|
||||||
|
- Manage users and groups with [SSO](./admin/users/oidc-auth.md) and [Role-based access controlled (RBAC)](./admin/users/groups-roles.md#roles).
|
||||||
|
|
||||||
|
- **Improved compatibility**
|
||||||
|
|
||||||
|
- Remote workspaces can share infrastructure configurations with other
|
||||||
|
development, staging, and production environments, reducing configuration
|
||||||
|
drift.
|
||||||
|
|
||||||
|
- **Improved accessibility**
|
||||||
|
- Connect to remote workspaces via browser-based IDEs or remote IDE
|
||||||
|
extensions to enable developers regardless of the device they use, whether
|
||||||
|
it's their main device, a lightweight laptop, Chromebook, or iPad.
|
||||||
|
|
||||||
|
Read more about why organizations and engineers are moving to remote
|
||||||
|
development on [our blog](https://coder.com/blog), the
|
||||||
|
[Slack engineering blog](https://slack.engineering/development-environments-at-slack),
|
||||||
|
or from [OpenFaaS's Alex Ellis](https://blog.alexellis.io/the-internet-is-my-computer/).
|
||||||
|
|
||||||
## Why Coder
|
## Why Coder
|
||||||
|
|
||||||
The key difference between Coder OSS and other remote IDE platforms is the added
|
The key difference between Coder and other remote IDE platforms is the added
|
||||||
layer of infrastructure control. This additional layer allows admins to:
|
layer of infrastructure control.
|
||||||
|
This additional layer allows admins to:
|
||||||
|
|
||||||
- Support ARM, Windows, Linux, and macOS workspaces
|
- Simultaneously support ARM, Windows, Linux, and macOS workspaces.
|
||||||
- Modify pod/container specs (e.g., adding disks, managing network policies,
|
- Modify pod/container specs, such as adding disks, managing network policies, or
|
||||||
setting/updating environment variables)
|
setting/updating environment variables.
|
||||||
- Use VM/dedicated workspaces, developing with Kernel features (no container
|
- Use VM or dedicated workspaces, developing with Kernel features (no container
|
||||||
knowledge required)
|
knowledge required).
|
||||||
- Enable persistent workspaces, which are like local machines, but faster and
|
- Enable persistent workspaces, which are like local machines, but faster and
|
||||||
hosted by a cloud service
|
hosted by a cloud service.
|
||||||
|
|
||||||
Coder includes
|
## How much does it cost?
|
||||||
[production-ready templates](https://registry.coder.com/templates) for use with
|
|
||||||
AWS EC2, Azure, Google Cloud, Kubernetes, and more.
|
|
||||||
|
|
||||||
## What Coder is _not_
|
Coder is free and open source under
|
||||||
|
[GNU Affero General Public License v3.0](https://github.com/coder/coder/blob/main/LICENSE).
|
||||||
|
All developer productivity features are included in the Open Source version of
|
||||||
|
Coder.
|
||||||
|
A [Premium license is available](https://coder.com/pricing#compare-plans) for enhanced
|
||||||
|
support options and custom deployments.
|
||||||
|
|
||||||
- Coder is not an infrastructure as code (IaC) platform. Terraform is the first
|
## How does Coder work
|
||||||
IaC _provisioner_ in Coder, allowing Coder admins to define Terraform
|
|
||||||
resources as Coder workspaces.
|
|
||||||
|
|
||||||
- Coder is not a DevOps/CI platform. Coder workspaces can follow best practices
|
Coder workspaces are represented with Terraform, but you don't need to know
|
||||||
for cloud service-based workloads, but Coder is not responsible for how you
|
Terraform to get started.
|
||||||
define or deploy the software you write.
|
We have a [database of production-ready templates](https://registry.coder.com/templates)
|
||||||
|
for use with AWS EC2, Azure, Google Cloud, Kubernetes, and more.
|
||||||
|
|
||||||
- Coder is not an online IDE. Instead, Coder supports common editors, such as VS
|
_Providers and compute environments_
|
||||||
Code, vim, and JetBrains, over HTTPS or SSH.
|
|
||||||
|
|
||||||
- Coder is not a collaboration platform. You can use git and dedicated IDE
|
Coder workspaces can be used for more than just compute.
|
||||||
extensions for pull requests, code reviews, and pair programming.
|
You can use Terraform to add storage buckets, secrets, sidecars,
|
||||||
|
[and more](https://developer.hashicorp.com/terraform/tutorials).
|
||||||
|
|
||||||
- Coder is not a SaaS/fully-managed offering. You must host Coder on a cloud
|
Visit the [templates documentation](./admin/templates/index.md) to learn more.
|
||||||
service (AWS, Azure, GCP) or your private data center.
|
|
||||||
|
## What Coder is not
|
||||||
|
|
||||||
|
- Coder is not an infrastructure as code (IaC) platform.
|
||||||
|
|
||||||
|
- Terraform is the first IaC _provisioner_ in Coder, allowing Coder admins to
|
||||||
|
define Terraform resources as Coder workspaces.
|
||||||
|
|
||||||
|
- Coder is not a DevOps/CI platform.
|
||||||
|
|
||||||
|
- Coder workspaces can be configured to follow best practices for
|
||||||
|
cloud-service-based workloads, but Coder is not responsible for how you
|
||||||
|
define or deploy the software you write.
|
||||||
|
|
||||||
|
- Coder is not an online IDE.
|
||||||
|
|
||||||
|
- Coder supports common editors, such as VS Code, vim, and JetBrains,
|
||||||
|
all over HTTPS or SSH.
|
||||||
|
|
||||||
|
- Coder is not a collaboration platform.
|
||||||
|
|
||||||
|
- You can use Git with your favorite Git platform and dedicated IDE
|
||||||
|
extensions for pull requests, code reviews, and pair programming.
|
||||||
|
|
||||||
|
- Coder is not a SaaS/fully-managed offering.
|
||||||
|
- Coder is a [self-hosted](<https://en.wikipedia.org/wiki/Self-hosting_(web_services)>)
|
||||||
|
solution.
|
||||||
|
You must host Coder in a private data center or on a cloud service, such as
|
||||||
|
AWS, Azure, or GCP.
|
||||||
|
|
||||||
|
## Using Coder v1?
|
||||||
|
|
||||||
|
If you're a Coder v1 customer, view [the v1 documentation](https://coder.com/docs/v1)
|
||||||
|
or [the v2 migration guide and FAQ](https://coder.com/docs/v1/guides/v2-faq).
|
||||||
|
|
||||||
|
## Up next
|
||||||
|
|
||||||
|
- Learn about [Templates](./admin/templates/index.md)
|
||||||
|
- [Install Coder](./install/index.md)
|
||||||
|
Reference in New Issue
Block a user