mirror of
https://github.com/coder/coder.git
synced 2026-09-24 15:04:27 +08:00
docs: restructure docs (#14421)
Closes #13434 Supersedes #14182 --------- Co-authored-by: Ethan <39577870+ethanndickson@users.noreply.github.com> Co-authored-by: Ethan Dickson <ethan@coder.com> Co-authored-by: Ben Potter <ben@coder.com> Co-authored-by: Stephen Kirby <58410745+stirby@users.noreply.github.com> Co-authored-by: Stephen Kirby <me@skirby.dev> Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Co-authored-by: Edward Angert <EdwardAngert@users.noreply.github.com>
This commit is contained in:
co-authored by
Ethan
Ethan Dickson
Ben Potter
Stephen Kirby
Stephen Kirby
EdwardAngert
Edward Angert
parent
288df75686
commit
419eba5fb6
+32
-32
@@ -1,19 +1,21 @@
|
||||
# Install Coder via Docker
|
||||
|
||||
You can install and run Coder using the official Docker images published on
|
||||
[GitHub Container Registry](https://github.com/coder/coder/pkgs/container/coder).
|
||||
|
||||
## Requirements
|
||||
|
||||
Docker is required. See the
|
||||
[official installation documentation](https://docs.docker.com/install/).
|
||||
- Docker. See the
|
||||
[official installation documentation](https://docs.docker.com/install/).
|
||||
|
||||
> Note that the below steps are only supported on a Linux distribution. If on
|
||||
> macOS, please [run Coder via the standalone binary](./index.md#manual).
|
||||
- A Linux machine. For macOS devices, start Coder using the
|
||||
[standalone binary](./cli.md).
|
||||
|
||||
<div class="tabs">
|
||||
- 2 CPU cores and 4 GB memory free on your machine.
|
||||
|
||||
## docker run
|
||||
## Install Coder via `docker run`
|
||||
|
||||
**Built-in database (quick)**
|
||||
### Built-in database (quick)
|
||||
|
||||
For proof-of-concept deployments, you can run a complete Coder instance with the
|
||||
following command.
|
||||
@@ -29,7 +31,7 @@ docker run --rm -it \
|
||||
ghcr.io/coder/coder:latest
|
||||
```
|
||||
|
||||
**External database**
|
||||
### External database (recommended)
|
||||
|
||||
For production deployments, we recommend using an external PostgreSQL database
|
||||
(version 13 or higher). Set `CODER_ACCESS_URL` to the external URL that users
|
||||
@@ -45,7 +47,7 @@ docker run --rm -it \
|
||||
ghcr.io/coder/coder:latest
|
||||
```
|
||||
|
||||
## docker compose
|
||||
## Install Coder via `docker compose`
|
||||
|
||||
Coder's publishes a
|
||||
[docker-compose example](https://github.com/coder/coder/blob/main/docker-compose.yaml)
|
||||
@@ -67,45 +69,43 @@ which includes an PostgreSQL container and volume.
|
||||
|
||||
4. Start Coder with `docker compose up`
|
||||
|
||||
5. Visit the web ui via the configured url.
|
||||
5. Visit the web UI via the configured url.
|
||||
|
||||
6. Follow the on-screen instructions log in and create your first template and
|
||||
workspace
|
||||
|
||||
</div>
|
||||
|
||||
Coder configuration is defined via environment variables. Learn more about
|
||||
Coder's [configuration options](../admin/configure.md).
|
||||
|
||||
> **Note:** In order to use cloud-based templates (e.g. Kubernetes, AWS), you
|
||||
> must have an external URL that users and workspaces will use to connect to
|
||||
> Coder.
|
||||
>
|
||||
> > For proof-of-concept deployments, you can use
|
||||
> > [Coder's tunnel](../admin/configure.md#tunnel).
|
||||
> >
|
||||
> > For production deployments, we recommend setting an
|
||||
> > [access URL](../admin/configure.md#access-url)
|
||||
|
||||
> **Note:** Coder runs as a non-root user, we use `--group-add` to ensure Coder
|
||||
> has permissions to manage Docker via `docker.sock`. If the host systems
|
||||
> `/var/run/docker.sock` is not group writeable or does not belong to the
|
||||
> `docker` group, the above may not work as-is.
|
||||
Coder's [configuration options](../admin/setup/index.md).
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Docker-based workspace is stuck in "Connecting..."
|
||||
|
||||
Ensure you have an externally-reachable `CODER_ACCESS_URL` set. See
|
||||
[troubleshooting templates](../templates/index.md#troubleshooting-templates) for
|
||||
more steps.
|
||||
[troubleshooting templates](../admin/templates/troubleshooting.md) for more
|
||||
steps.
|
||||
|
||||
### Permission denied while trying to connect to the Docker daemon socket
|
||||
|
||||
See Docker's official documentation to
|
||||
[Manage Docker as a non-root user](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user)
|
||||
|
||||
### I cannot add Docker templates
|
||||
|
||||
Coder runs as a non-root user, we use `--group-add` to ensure Coder has
|
||||
permissions to manage Docker via `docker.sock`. If the host systems
|
||||
`/var/run/docker.sock` is not group writeable or does not belong to the `docker`
|
||||
group, the above may not work as-is.
|
||||
|
||||
### I cannot add cloud-based templates
|
||||
|
||||
In order to use cloud-based templates (e.g. Kubernetes, AWS), you must have an
|
||||
external URL that users and workspaces will use to connect to Coder. For
|
||||
proof-of-concept deployments, you can use
|
||||
[Coder's tunnel](../admin/setup/index.md#tunnel). For production deployments, we
|
||||
recommend setting an [access URL](../admin/setup/index.md#access-url)
|
||||
|
||||
## Next steps
|
||||
|
||||
- [Configuring Coder](../admin/configure.md)
|
||||
- [Templates](../templates/index.md)
|
||||
- [Create your first template](../tutorials/template-from-scratch.md)
|
||||
- [Control plane configuration](../admin/setup/index.md#configure-control-plane-access)
|
||||
|
||||
Reference in New Issue
Block a user