docs
/

Workspace provider provisioning via CLI

2 min read

Learn how to provision a workspace provider using the Coder CLI.

  1. Install and authenticate the Coder CLI.

  2. Run the following to provision a new Kubernetes workspace provider (be sure to replace the placeholders as necessary):

    coder providers create kubernetes [name] --namespace=[namespace] --cluster-address=[clusterAddress]
    
    ParameterDescription
    nameThe name for the workspace provider you'd like provisioned
    namespaceThe namespace in which to provision workspaces.
    cluster-addressThe address of the Kubernetes control plane; find using kubectl cluster-info

    Example usage:

    coder providers create kubernetes my-provider --namespace=my-namespace --cluster-address=https://255.255.255.255`
    

    To create a new EC2 workspace provider:

    coder providers create ec2 [name] --access-key-id=[access-key-id] --secret-access-key=[secret-access-key]
    
    ParameterDescription
    nameThe name for the workspace provider you'd like provisioned
    access-key-idThe AWS access key associated with your account.
    secret-access-keyThe AWS region where the EC2 instances should be created.
    coder providers create ec2 my-provider --access-key-id=AKIAIOSFODNN7EXAMPLE --secret-access-key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
    
  3. Once you've provisioned the workspace provider, deploy it to your Kubernetes or EC2 cluster.

    Ensure that you're connected to the cluster you're deploying to, and run the provided helm upgrade command; it should look something like the following, but with the placeholders filled with values appropriate to your deployment:

    helm upgrade coder-workspace-provider coder/workspace-provider
    --version=
    --atomic
    --install
    --force
    --set envproxy.token=
    --set envproxy.accessURL=
    --set ingress.host=
    --set envproxy.clusterAddress=
    --set cemanager.accessURL=

    WARNING: The 'envproxy.token' is a secret value that authenticates the workspace provider; make sure that you don't share this token or make it public.

    You can set additional values of the Helm Chart to customize the deployment further.

See an opportunity to improve our docs? Make an edit.