{"id":20839154,"url":"https://github.com/timoa/terraform-oci-vscode-server","last_synced_at":"2025-08-25T20:09:46.487Z","repository":{"id":39637093,"uuid":"491678856","full_name":"timoa/terraform-oci-vscode-server","owner":"timoa","description":"Terraform project that deploys VSCode Server on Oracle Cloud Infrastructure (free tier) and protect the access with Cloudflare Zero Trust (optional) or an SSH tunnel","archived":false,"fork":false,"pushed_at":"2025-08-03T14:25:06.000Z","size":657,"stargazers_count":27,"open_issues_count":21,"forks_count":1,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2025-08-03T16:16:25.977Z","etag":null,"topics":["cloudflare","cloudflare-access","cloudflare-tunnel","cloudflare-zero-trust","code-server","managed-by-terraform","oci","terraform","vscode","vscode-remote"],"latest_commit_sha":null,"homepage":"https://timoa.com","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/timoa.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-05-12T21:54:51.000Z","updated_at":"2025-05-06T13:09:31.000Z","dependencies_parsed_at":"2023-12-08T01:31:13.035Z","dependency_job_id":"a6b82c2c-bd4e-44ae-a278-7ee12a07c526","html_url":"https://github.com/timoa/terraform-oci-vscode-server","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/timoa/terraform-oci-vscode-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timoa%2Fterraform-oci-vscode-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timoa%2Fterraform-oci-vscode-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timoa%2Fterraform-oci-vscode-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timoa%2Fterraform-oci-vscode-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/timoa","download_url":"https://codeload.github.com/timoa/terraform-oci-vscode-server/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timoa%2Fterraform-oci-vscode-server/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272124753,"owners_count":24877720,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-25T02:00:12.092Z","response_time":1107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloudflare","cloudflare-access","cloudflare-tunnel","cloudflare-zero-trust","code-server","managed-by-terraform","oci","terraform","vscode","vscode-remote"],"created_at":"2024-11-18T01:12:29.423Z","updated_at":"2025-08-25T20:09:46.448Z","avatar_url":"https://github.com/timoa.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Deploy VSCode Server on OCI with Terraform\n\n[![Latest Release][release-badge]][release-url]\n[![Build Status][github-badge]][github-url]\n[![License][license-badge]][license-url]\n\n![Diagram VSCode hosted on OCI with CloudFlare Access (zero trust)][diagram]\n\nTerraform project that deploys VSCode Server on Oracle Cloud Infrastructure using only the free tier.\n\n\u003e WARNING: This project is currently under active development.\n\u003e Please check back later.\n\n## The challenge\n\n### Goal\n\nDeploy a free and easy maintenable VSCode Server.\n\n### Limitations\n\nCurrently, Oracle Cloud Free tier provides great performance (4vCPU ARM based, 24GB of RAM, and 200GB of storage), but:\n\n* The instances are preemptible, which means that they can be terminated at any time\n* We can't create custom images (with Packer for ex.), so we have to install VSCode Server and other dependencies at boot time\n* Can be hard to find an OCI datacenter that still has available capacity\n\n### Use cases\n\n* Code from any computer with your VSCode and your tools without any install\n* Code from your tablet or slow computer with a remote VSCode Server\n* Onboard a new team member without spending the first days configuring VSCode and other tools on their computer\n\n## How to start\n\n### Create an OCI account\n\nSignup for a free OCI account [here][oci-signup-url].\n\nIf you're new to Oracle Cloud Infrastructure, you need to the following:\n\n* **Tenant**: kind of an account, like a company or an organization\n* **Compartment**: it's a isolated area to deploy a project or an environment (similar a GCP project).\n\nI recommend to create a new compartment for deploying VSCode Server, that way you will be able to use share free tier resource for a different project or rebuild from scratch a new VSCode Server instead of using the default compartment.\n\n### Configure the OCI authentication\n\n### Deploy the VSCode Server instance\n\n### Access to VSCode Server from your browser\n\n### Create a Cloudflare acount (optional)\n\nSignup for a free Cloudflare account [here][cloudflare-signup-url].\n\n### Configure the Cloudflare Zero Trust (optional)\n\n## TODO\n\n* [x] Create the custom VCN (VPC)\n* [x] Get the latest Ubuntu image automatically\n* [x] Create the block volume for `/data` (100GB)\n* [x] Attach the block volume to the instance\n* [x] Create the instance on free tier (4 vCPU, 24GB memory)\n* [x] Configure the instance and install VSCode Server with Cloud Init\n* [x] Create automatically the SSH key pair\n* [x] Mount and format the block volume on `/data`\n* [x] Restrict SSH and VS Code port access\n* [x] Configure backups of the block volume only\n* [x] Configure Cloudflare Access (ZeroTrust) to secure the instance access\n* [ ] Install dependencies/tools on the data volume to speed up the provisioning\n* [ ] Create dynamically an Ansible Vault to save the sensitive data used by Ansible\n* [ ] Encrypt the block volume with a KMS key\n* [ ] Write the documentation for the manual steps (Oracle Cloud Infrastructure \u0026 Cloudflare accounts, etc.)\n* [ ] Explain how to avoid the \"Out of Host capacity\" error on Oracle Cloud Infrastructure\n\n## Known issues\n\n* [bug] Optional dependencies install are executed in parallel and can fail (dpkg lock) ([#11][i11])\n* [bug] Inconsistent mounting of the /data volume ([#12][i12])\n* [bug] Interactive terminal during Ansible run due to the SSH Host to allow ([#13][i13])\n\n[github-badge]: https://github.com/timoa/terraform-oci-vscode-server/workflows/Terraform/badge.svg\n[github-url]: https://github.com/timoa/terraform-oci-vscode-server/actions?query=workflow%3ATerraform\n[release-badge]: https://img.shields.io/github/release/timoa/terraform-oci-vscode-server.svg\n[release-url]: https://github.com/timoa/terraform-oci-vscode-server/releases/latest\n[license-badge]: https://img.shields.io/github/license/timoa/terraform-oci-vscode-server.svg\n[license-url]: https://github.com/timoa/terraform-oci-vscode-server/blob/main/LICENSE\n\n[diagram]: /docs/diagram.svg\n\n[oci-signup-url]: https://signup.cloud.oracle.com\n[cloudflare-signup-url]: https://dash.cloudflare.com/sign-up\n\n[i11]: https://github.com/timoa/terraform-oci-vscode-server/issues/11\n[i12]: https://github.com/timoa/terraform-oci-vscode-server/issues/12\n[i13]: https://github.com/timoa/terraform-oci-vscode-server/issues/13\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimoa%2Fterraform-oci-vscode-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftimoa%2Fterraform-oci-vscode-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimoa%2Fterraform-oci-vscode-server/lists"}