mirror of
https://github.com/coder/coder.git
synced 2025-07-09 11:45:56 +00:00
79 lines
2.2 KiB
Markdown
79 lines
2.2 KiB
Markdown
---
|
|
name: Develop in Linux on AWS EC2
|
|
description: Get started with Linux development on AWS EC2.
|
|
tags: [cloud, aws]
|
|
icon: /icon/aws.png
|
|
---
|
|
|
|
# aws-linux
|
|
|
|
To get started, run `coder templates init`. When prompted, select this template.
|
|
Follow the on-screen instructions to proceed.
|
|
|
|
## Authentication
|
|
|
|
This template assumes that coderd is run in an environment that is authenticated
|
|
with AWS. For example, run `aws configure import` to import credentials on the
|
|
system and user running coderd. For other ways to authenticate [consult the
|
|
Terraform docs](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#authentication-and-configuration).
|
|
|
|
## Required permissions / policy
|
|
|
|
The following sample policy allows Coder to create EC2 instances and modify
|
|
instances provisioned by Coder:
|
|
|
|
```json
|
|
{
|
|
"Version": "2012-10-17",
|
|
"Statement": [
|
|
{
|
|
"Sid": "VisualEditor0",
|
|
"Effect": "Allow",
|
|
"Action": [
|
|
"ec2:GetDefaultCreditSpecification",
|
|
"ec2:DescribeIamInstanceProfileAssociations",
|
|
"ec2:DescribeTags",
|
|
"ec2:DescribeInstances",
|
|
"ec2:DescribeInstanceTypes",
|
|
"ec2:CreateTags",
|
|
"ec2:RunInstances",
|
|
"ec2:DescribeInstanceCreditSpecifications",
|
|
"ec2:DescribeImages",
|
|
"ec2:ModifyDefaultCreditSpecification",
|
|
"ec2:DescribeVolumes"
|
|
],
|
|
"Resource": "*"
|
|
},
|
|
{
|
|
"Sid": "CoderResources",
|
|
"Effect": "Allow",
|
|
"Action": [
|
|
"ec2:DescribeInstanceAttribute",
|
|
"ec2:UnmonitorInstances",
|
|
"ec2:TerminateInstances",
|
|
"ec2:StartInstances",
|
|
"ec2:StopInstances",
|
|
"ec2:DeleteTags",
|
|
"ec2:MonitorInstances",
|
|
"ec2:CreateTags",
|
|
"ec2:RunInstances",
|
|
"ec2:ModifyInstanceAttribute",
|
|
"ec2:ModifyInstanceCreditSpecification"
|
|
],
|
|
"Resource": "arn:aws:ec2:*:*:instance/*",
|
|
"Condition": {
|
|
"StringEquals": {
|
|
"aws:ResourceTag/Coder_Provisioned": "true"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
## code-server
|
|
|
|
`code-server` is installed via the `startup_script` argument in the `coder_agent`
|
|
resource block. The `coder_app` resource is defined to access `code-server` through
|
|
the dashboard UI over `localhost:13337`.
|