mirror of
https://github.com/coder/coder.git
synced 2025-07-12 00:14:10 +00:00
stage 1 of many - new login screenshot - remove unused platforms screenshots - update [screenshots doc](https://coder.com/docs/@2025-screenshots/about/screenshots) - update [quickstart doc](https://coder.com/docs/@2025-screenshots/tutorials/quickstart) closes #18813 <details><summary>list of screenshots with old logo or that are outdated</summary> |docs/images/|notes?| |--|--| |logo-black.png| | |jupyter-notebook.png| | |platforms/docker/login.png| | |platforms/docker/create-workspace.png| | |platforms/docker/ides.png| | |platforms/gcp/marketplace.png| | |platforms/gcp/start.png| | |platforms/aws/aws-linux.png| | |platforms/aws/marketplace.png| | |platforms/kubernetes/template-variables.png| | |platforms/kubernetes/region-picker.png| | |platforms/kubernetes/starter-template.png| | |install/windows-installer.png| | |install/homebrew.png| | |screenshots/create-template.png| | |screenshots/login.png| | |screenshots/starter_templates.png| | |screenshots/settings.png| | |screenshots/audit.png| | |screenshots/workspace-running-with-topbar.png| | |screenshots/workspaces_listing.png| | |screenshots/templates_listing.png| | |screenshots/welcome-create-admin-user.png| | |screenshots/workspace_launch.png| | |screenshots/templates_insights.png| | |screenshots/healthcheck.png| | |screenshots/terraform.png| | |deploy-pr-manually.png| | |workspace-update.png| | |custom-app.png| | |code-server.png| | |networking/annotatedports.png| | |networking/portsharingmax.png| | |networking/portforwarddashboard.png| | |networking/listeningports.png| | |agent-metadata.png| | |jupyter.png| | |admin/service-banner-maintenance.png| | |admin/provisioner-tags.png| | |admin/github-app-register.png| | |admin/licenses/licenses-screen.png| | |admin/licenses/licenses-nolicense.png| | |admin/licenses/add-license-ui.png| | |admin/service-banner-config.png| | |admin/group-allowlist.png| | |admin/networking/workspace-proxies/ws-proxy-picker.png| | |admin/setup/appearance/application-name-logo-url.png| | |admin/setup/appearance/announcement_banner_settings.png| | |admin/setup/appearance/support-links.png| | |admin/setup/appearance/service-banner-secret.png| | |admin/quota-buildlog.png| | |admin/integrations/kube-region-picker.png| | |admin/integrations/coder-logstream-kube-logs-wrong-image.png| | |admin/integrations/coder-logstream-kube-logs-pod-crashed.png| | |admin/integrations/coder-logstream-kube-logs-normal.png| | |admin/integrations/coder-logstream-kube-logs-quota-exceeded.png| | |admin/git-auth-template.png| | |admin/github-app-install.png| | |admin/users/organizations/role-sync.png| | |admin/users/organizations/group-sync-empty.png| | |admin/users/organizations/workspace-list.png| | |admin/users/organizations/new-organization.png| | |admin/users/organizations/role-sync-empty.png| | |admin/users/organizations/template-org-picker.png| | |admin/users/organizations/organization-members.png| | |admin/users/organizations/org-dropdown-create.png| | |admin/users/organizations/default-organization-settings.png| | |admin/users/organizations/group-sync.png| | |admin/users/organizations/idp-org-sync.png| | |admin/users/organizations/admin-settings-orgs.png| | |admin/users/organizations/custom-roles.png| | |admin/users/quotas/quota-groups.png| | |admin/users/create-token.png| | |admin/users/headless-user.png| | |admin/provisioners/provisioner-jobs.png| | |admin/github-app-permissions.png| | |admin/templates/coder-apps-ui.png| | |admin/templates/starter-templates.png| | |admin/templates/create-template.png| | |admin/templates/schedule/template-schedule-settings.png| | |admin/templates/schedule/user-quiet-hours.png| | |admin/templates/coder-metadata-ui.png| | |admin/templates/duplicate-menu.png| | |admin/templates/agent-metadata-ui.png| | |admin/templates/troubleshooting/workspace-build-timings-ui.png| | |admin/templates/duplicate-page.png| | |admin/templates/new-duplicate-template.png| | |admin/templates/import-template.png| | |admin/templates/extend-templates/prebuilt/replacement-notification.png| | |admin/templates/extend-templates/prebuilt/prebuilt-workspaces.png| | |admin/templates/extend-templates/dyn-params/dynamic-params-compare.png| | |admin/templates/extend-templates/dyn-params/enable-dynamic-parameters.png| | |admin/templates/extend-templates/template-preset-dropdown.png| | |admin/monitoring/health-check.png| | |admin/monitoring/logstream-kube.png| | |admin/monitoring/notifications/user-notification-preferences.png| | |admin/monitoring/notifications/notification-admin-prefs.png| | |admin/workspace-proxy-picker.png| | |admin/admin-settings-general.png| | |admin/deployment-id-copy-clipboard.png| | |icons-gallery.png| | |start/setup-page.png| | |start/workspace-schedule-settings.png| | |start/build-template.png| | |start/starter-templates.png| | |start/create-template.png| | |start/create-workspace.png| | |start/template-preview.png| | |start/blank-workspaces.png| | |start/template-source-code.png| | |start/first-template.png| | |start/workspace-ready.png| | |start/template-edit-source-code.png| | |start/template-publish.png| | |start/starter-templates-annotated.png| | |display-apps.png| | |workspace-automatic-updates.png| | |workspaces/autostop.png| | |workspaces/autostart.png| | |create-workspace-from-templates-ui.png| | |ide-row.png| | |editors.png| | |delete-template.png| | |logo-white.png| | |template-rbac.png| | |coderapp-port-forward.png| | |user-guides/terminal-access.png| | |user-guides/workspace-bulk-actions.png| | |user-guides/devcontainers/devcontainer-agent-ports.png| | |user-guides/devcontainers/devcontainer-web-terminal.png| | |user-guides/create-workspace-ui.png| | |user-guides/workspace-view-connection-annotated.png| | |user-guides/remote-desktops/web-rdp-demo.png| | |user-guides/remote-desktops/amazon-dcv-windows-demo.png| | |user-guides/desktop/coder-desktop-file-sync-add.png| | |user-guides/desktop/coder-desktop-session-token.png| | |user-guides/desktop/coder-desktop-win-pre-sign-in.png| | |user-guides/desktop/coder-desktop-file-sync-conflicts-mouseover.png| | |user-guides/desktop/coder-desktop-mac-pre-sign-in.png| | |user-guides/desktop/coder-desktop-file-sync-watching.png| | |user-guides/desktop/coder-desktop-win-enable-coder-connect.png| | |user-guides/desktop/coder-desktop-sign-in.png| | |user-guides/desktop/coder-desktop-file-sync.png| | |user-guides/desktop/coder-desktop-file-sync-staging.png| | |user-guides/desktop/chrome-insecure-origin.png| | |user-guides/desktop/coder-desktop-workspaces.png| | |user-guides/jetbrains/toolbox/workspaces.png| | |user-guides/jetbrains/toolbox/install.png| | |user-guides/jetbrains/toolbox/login-token.png| | |user-guides/jetbrains/toolbox/login-url.png| | |user-guides/schedule-settings-workspace.png| | |user-guides/dotfiles-module.png| | |user-guides/workspace-list-ui.png| | |user-guides/workspace-settings-location.png| | |template-variables.png| | |ides/code-web-extensions.png| | |ides/copilot.png| | |architecture-multi-region.png| | |external-apps.png| | |guides/ai-agents/tasks-ui.png| | |guides/ai-agents/duplicate.png| | |guides/ai-agents/landing.png| | |guides/ai-agents/workspace-page.png| | |guides/ai-agents/realworld-ui.png| | |guides/xray-integration/example.png| | |guides/using-organizations/workspace-list.png| | |guides/using-organizations/new-organization.png| | |guides/using-organizations/template-org-picker.png| | |guides/using-organizations/deployment-organizations.png| | |guides/using-organizations/organization-members.png| | |readme-logos.png| | |metadata-ui.png| | |secret-metadata-ui.png| | |projector-intellij.png| | |schedule.png| | |ssh-keys.png| | |template-scheduling.png| | |templates/general-settings.png| | |templates/build-template.png| | |templates/update.png| | |templates/starter-templates.png| | |templates/create-template.png| | |templates/select-template.png| | |templates/pre-filled-parameters.png| | |templates/source-code.png| | |templates/upload-create-your-first-template.png| | |templates/create-workspace.png| | |templates/edit-source-code.png| | |templates/permissions.png| | |templates/coder-session-token.png| | |templates/starter-templates-button.png| | |templates/template-tour.png| | |templates/edit-files.png| | |templates/workspace-ready.png| | |templates/template-menu-settings.png| | |templates/workspace-apps.png| | |templates/coder-login-web.png| | |templates/new-workspace.png| | |templates/template-variables.png| | |templates/use-template.png| | |templates/healthy-workspace-agent.png| | |templates/update-policies.png| | |templates/upload-create-template-form.png| | |templates/develop-in-docker-template.png| | |templates/publish.png| | |templates/devcontainers.png| | |templates/create-template-permissions.png| | |port-forward-dashboard.png| | |creating-workspace-ui.png| | |parameters.png| | |best-practice/build-timeline.png| | |file-browser.png| | |architecture-single-region.png| | |gateway/plugin-settings-marketplace.png| | |gateway/plugin-session-token.png| | |gateway/plugin-connect-to-coder.png| | |gateway/plugin-select-ide.png| | |gateway/plugin-ide-list.png| | |hero-image.png| | </details> --------- Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
233 lines
6.4 KiB
Markdown
233 lines
6.4 KiB
Markdown
# Quickstart
|
|
|
|
Follow the steps in this guide to install Coder locally or on a cloud-hosting
|
|
provider, set up a workspace, and connect to it from VS Code.
|
|
|
|
By the end of this guide, you'll have a remote development environment that you
|
|
can connect to from any device anywhere, so you can work on the same files in a
|
|
persistent environment from your main device, a tablet, or your phone.
|
|
|
|
## Install and start Coder
|
|
|
|
<div class="tabs">
|
|
|
|
## Linux/macOS
|
|
|
|
1. Install Docker:
|
|
|
|
```bash
|
|
curl -sSL https://get.docker.com | sh
|
|
```
|
|
|
|
For more details, visit:
|
|
|
|
- [Linux instructions](https://docs.docker.com/desktop/install/linux-install/)
|
|
- [Mac instructions](https://docs.docker.com/desktop/install/mac-install/)
|
|
|
|
1. Assign your user to the Docker group:
|
|
|
|
```shell
|
|
sudo usermod -aG docker $USER
|
|
```
|
|
|
|
1. Run `newgrp` to activate the groups changes:
|
|
|
|
```shell
|
|
newgrp docker
|
|
```
|
|
|
|
You might need to log out and back in or restart the machine for changes to
|
|
take effect.
|
|
|
|
1. Install Coder:
|
|
|
|
```shell
|
|
curl -L https://coder.com/install.sh | sh
|
|
```
|
|
|
|
- For standalone binaries, system packages, or other alternate installation
|
|
methods, refer to the
|
|
[latest release on GitHub](https://github.com/coder/coder/releases/latest).
|
|
|
|
1. Start Coder:
|
|
|
|
```shell
|
|
coder server
|
|
```
|
|
|
|
## Windows
|
|
|
|
If you plan to use the built-in PostgreSQL database, ensure that the
|
|
[Visual C++ Runtime](https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist#latest-microsoft-visual-c-redistributable-version)
|
|
is installed.
|
|
|
|
1. [Install Docker](https://docs.docker.com/desktop/install/windows-install/).
|
|
|
|
1. Use the
|
|
[`winget`](https://learn.microsoft.com/en-us/windows/package-manager/winget/#use-winget)
|
|
package manager to install Coder:
|
|
|
|
```powershell
|
|
winget install Coder.Coder
|
|
```
|
|
|
|
1. Start Coder:
|
|
|
|
```shell
|
|
coder server
|
|
```
|
|
|
|
</div>
|
|
|
|
## Configure Coder with a new Workspace
|
|
|
|
1. Coder will attempt to open the setup page in your browser. If it doesn't open
|
|
automatically, go to <http://localhost:3000>.
|
|
|
|
- If you get a browser warning similar to `Secure Site Not Available`, you
|
|
can ignore the warning and continue to the setup page.
|
|
|
|
If your Coder server is on a network or cloud device, or you are having
|
|
trouble viewing the page, locate the web UI URL in Coder logs in your
|
|
terminal. It looks like `https://<CUSTOM-STRING>.<TUNNEL>.try.coder.app`.
|
|
It's one of the first lines of output, so you might have to scroll up to find
|
|
it.
|
|
|
|
1. On the **Welcome to Coder** page, to use your GitHub account to log in,
|
|
select **Continue with GitHub**.
|
|
You can also enter an email and password to create a new admin account on
|
|
the Coder deployment:
|
|
|
|
_Welcome
|
|
to Coder - Create admin user_
|
|
|
|
1. On the **Workspaces** page, select **Go to templates** to create a new
|
|
template.
|
|
|
|
1. For this guide, use a Docker container. Locate **Docker Containers** and
|
|
select **Use template**.
|
|
|
|
1. Give the template a **Name** that you'll recognize both in the Coder UI and
|
|
in command-line calls.
|
|
|
|
The rest of the template details are optional, but will be helpful when you
|
|
have more templates.
|
|
|
|
_Create
|
|
template_
|
|
|
|
1. Select **Save**.
|
|
|
|
1. After the template is ready, select **Create Workspace**.
|
|
|
|
1. Give the workspace a name and select **Create Workspace**.
|
|
|
|
1. Coder starts your new workspace:
|
|
|
|
_Workspace
|
|
is running_
|
|
|
|
1. Select **VS Code Desktop** to install the Coder extension and connect to your
|
|
Coder workspace.
|
|
|
|
## Work on some code
|
|
|
|
After VS Code loads the remote environment, you can select **Open Folder** to
|
|
explore directories in the Docker container or work on something new.
|
|
|
|
To clone an existing repository:
|
|
|
|
1. Select **Clone Repository** and enter the repository URL.
|
|
|
|
For example, to clone the Coder repo, enter
|
|
`https://github.com/coder/coder.git`.
|
|
|
|
Learn more about how to find the repository URL in the
|
|
[GitHub documentation](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository).
|
|
|
|
1. Choose the folder to which VS Code should clone the repo. It will be in its
|
|
own directory within this folder.
|
|
|
|
Note that you cannot create a new parent directory in this step.
|
|
|
|
1. After VS Code completes the clone, select **Open** to open the directory.
|
|
|
|
1. You are now using VS Code in your Coder environment!
|
|
|
|
## What's next?
|
|
|
|
Now that you have your own workspace, use the same template to set one up for a
|
|
teammate.
|
|
|
|
Go to **Templates** and select **Create Workspace** and continue from Step 7 in
|
|
[Configure Coder with a new workspace](#configure-coder-with-a-new-workspace).
|
|
|
|
After that, you can try to:
|
|
|
|
- [Customize templates](../admin/templates/extending-templates/index.md)
|
|
- [Enable Prometheus metrics](../admin/integrations/prometheus.md)
|
|
- [Deploy to Google Cloud Platform (GCP)](../install/cloud/compute-engine.md)
|
|
|
|
## Troubleshooting
|
|
|
|
### Cannot connect to the Docker daemon
|
|
|
|
> Error: Error pinging Docker server: Cannot connect to the Docker daemon at
|
|
> unix:///var/run/docker.sock. Is the docker daemon running?
|
|
|
|
1. Install Docker for your system:
|
|
|
|
```shell
|
|
curl -sSL https://get.docker.com | sh
|
|
```
|
|
|
|
1. Set up the Docker daemon in rootless mode for your user to run Docker as a
|
|
non-privileged user:
|
|
|
|
```shell
|
|
dockerd-rootless-setuptool.sh install
|
|
```
|
|
|
|
Depending on your system's dependencies, you might need to run other commands
|
|
before you retry this step. Read the output of this command for further
|
|
instructions.
|
|
|
|
1. Assign your user to the Docker group:
|
|
|
|
```shell
|
|
sudo usermod -aG docker $USER
|
|
```
|
|
|
|
1. Confirm that the user has been added:
|
|
|
|
```console
|
|
$ groups
|
|
docker sudo users
|
|
```
|
|
|
|
- Ubuntu users might not see the group membership update. In that case, run
|
|
the following command or reboot the machine:
|
|
|
|
```shell
|
|
newgrp docker
|
|
```
|
|
|
|
### Can't start Coder server: Address already in use
|
|
|
|
```shell
|
|
Encountered an error running "coder server", see "coder server --help" for more information
|
|
error: configure http(s): listen tcp 127.0.0.1:3000: bind: address already in use
|
|
```
|
|
|
|
1. Stop the process:
|
|
|
|
```shell
|
|
sudo systemctl stop coder
|
|
```
|
|
|
|
1. Start Coder:
|
|
|
|
```shell
|
|
coder server
|
|
```
|