This commit is contained in:
Chuck Lantz
2019-05-01 14:14:22 -07:00

View File

@@ -1,33 +1,8 @@
# Try Out Development Containers: Node.js
This is a sample project to go along with the "Try a dev container" quick start for the **[VS Code Remote - Containers](https://aka.ms/vscode-remote/containers)** extension.
This is a sample project that lets you try out the **[VS Code Remote - Containers](https://aka.ms/vscode-remote/containers)** extension in a few easy steps.
**If you aren't already following the quick start, [see below](#setting-up-the-development-container).**
## Things to try
One you have this sample opened in a container, you'll be able to work with it like you would locally.
Some things to try:
1. **Edit:**
1. Open `server.js`
2. Try adding some code and check out the language features.
2. **Terminal:** Press <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>\`</kbd> and type `uname` and other Linux commands from the terminal window.
3. **Build, Run, and Debug:**
1. Open `server.js`
2. Add a breakpoint (e.g. on line 20).
3. Press <kbd>F5</kbd> to launch the app in the container.
4. Once the breakpoint is hit, try hovering over variables, examining locals, and more.
5. Continue, then open a local browser and go to `http://localhost:3000` and note you can connect to the server in the container.
4. **Forward another port:**
1. Stop debugging and remove the breakpoint.
2. Open `server.js`
3. Change the server port to 5000. (`const PORT = 5000;`)
4. Press <kbd>F5</kbd> to launch the app in the container.
5. Press <kbd>F1</kbd> and run the **Remote-Containers: Forward Port...** command.
6. Select port 5000.
7. Click "Open Browser" in the notification that appears to access the web app on this new port.
> **Note:** If you're following the quick start, you can jump to the [Things to try](#things-to-try) section.
## Setting up the development container
@@ -36,10 +11,34 @@ Follow these steps to open this sample in a container:
1. If this is your first time using a development container, please follow the [getting started steps](https://aka.ms/vscode-remote/containers/getting-started).
2. If you're not yet in a development container:
1. Clone this repository.
2. Press <kbd>F1</kbd> and select the **Remote-Container: Open Folder in Container...** command.
3. Select the cloned copy of this folder, wait for the container to start, and try things out!
- Clone this repository.
- Press <kbd>F1</kbd> and select the **Remote-Container: Open Folder in Container...** command.
- Select the cloned copy of this folder, wait for the container to start, and try things out!
## Things to try
One you have this sample opened in a container, you'll be able to work with it like you would locally.
Some things to try:
1. **Edit:**
- Open `server.js`
- Try adding some code and check out the language features. Notice that `eslint` and the `vscode-eslint` extension are already installed in the container.
2. **Terminal:** Press <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>\`</kbd> and type `uname` and other Linux commands from the terminal window.
3. **Build, Run, and Debug:**
- Open `server.js`
- Add a breakpoint (e.g. on line 20).
- Press <kbd>F5</kbd> to launch the app in the container.
- Once the breakpoint is hit, try hovering over variables, examining locals, and more.
- Continue, then open a local browser and go to `http://localhost:3000` and note you can connect to the server in the container.
4. **Forward another port:**
- Stop debugging and remove the breakpoint.
- Open `server.js`
- Change the server port to 5000. (`const PORT = 5000;`)
- Press <kbd>F5</kbd> to launch the app in the container.
- Press <kbd>F1</kbd> and run the **Remote-Containers: Forward Port from Container...** command.
- Select port 5000.
- Click "Open Browser" in the notification that appears to access the web app on this new port.
## Contributing
@@ -57,5 +56,5 @@ contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additio
## License
Copyright <EFBFBD> Microsoft Corporation All rights reserved.<br />
Copyright © Microsoft Corporation All rights reserved.<br />
Licensed under the MIT License. See LICENSE in the project root for license information.