|
| 1 | +# VSCode Remote Development - Developing inside a Containers |
| 2 | + |
| 3 | +This folder contains configuration files that can be used to opt into working on this repository in a [Docker container](https://www.docker.com/resources/what-container) via [VSCode](https://code.visualstudio.com/)'s Remote Development feature (see below). |
| 4 | + |
| 5 | +Info on remote development and developing inside a container with VSCode: |
| 6 | +- [VSCode: Remote Development](https://code.visualstudio.com/docs/remote/remote-overview) |
| 7 | +- [VSCode: Developing inside a Container](https://code.visualstudio.com/docs/remote/containers) |
| 8 | +- [VSCode: Remote Development FAQ](https://code.visualstudio.com/docs/remote/faq) |
| 9 | + |
| 10 | + |
| 11 | +## Usage |
| 12 | + |
| 13 | +_Prerequisite: [Install Docker](https://docs.docker.com/install) on your local environment._ |
| 14 | + |
| 15 | +To get started, read and follow the instuctions in [Developing inside a Container](https://code.visualstudio.com/docs/remote/containers). The [.devcontainer/](.) directory contains pre-configured `devcontainer.json` and `Dockerfile` files, which you can use to set up remote development with a docker container. |
| 16 | + |
| 17 | +In a nutshell, you need to: |
| 18 | +- Install the [Remote - Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) extension. |
| 19 | +- Copy [recommended-Dockerfile](./recommended-Dockerfile) to `Dockerfile` (and optionally tweak to suit your needs). |
| 20 | +- Copy [recommended-devcontainer.json](./recommended-devcontainer.json) to `devcontainer.json` (and optionally tweak to suit your needs). |
| 21 | +- Open VSCode and bring up the [Command Palette](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette). |
| 22 | +- Type `Remote-Containers: Open Folder in Container` and choose your local clone of [angular/angular](https://github.com/angular/angular). |
| 23 | + |
| 24 | +The `.devcontainer/devcontainer.json` and `.devcontainer/Dockerfile` files are ignored by git, so you can have your own local versions. We may occasionally update the template files ([recommended-devcontainer.json](./recommended-devcontainer.json), [recommended-Dockerfile](./recommended-Dockerfile)), in which case you will need to manually update your local copies (if desired). |
| 25 | + |
| 26 | + |
| 27 | +## Updating `recommended-devcontainer.json` and `recommended-Dockerfile` |
| 28 | + |
| 29 | +You can update and commit the recommended config files (which people use as basis for their local configs), if you find that something is broken, out-of-date or can be improved. |
| 30 | + |
| 31 | +Please, keep in mind that any changes you make will potentially be used by many people on different environments. Try to keep these config files cross-platform compatible and free of personal preferences. |
0 commit comments