Highlight image metadata, alternates to image ref (#86)

This commit is contained in:
Chuck Lantz
2022-12-23 08:33:42 -06:00
committed by GitHub
parent bbceb49885
commit 15ba80171a
3 changed files with 21 additions and 24 deletions

View File

@@ -3,7 +3,8 @@
// README at: https://github.com/devcontainers/templates/tree/main/src/javascript-node // README at: https://github.com/devcontainers/templates/tree/main/src/javascript-node
{ {
"name": "Node.js", "name": "Node.js",
"image": "mcr.microsoft.com/devcontainers/javascript-node:16-bullseye", // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/javascript-node:0-18-bullseye",
// Features to add to the dev container. More info: https://containers.dev/features. // Features to add to the dev container. More info: https://containers.dev/features.
// "features": {}, // "features": {},
@@ -12,9 +13,9 @@
"customizations": { "customizations": {
// Configure properties specific to VS Code. // Configure properties specific to VS Code.
"vscode": { "vscode": {
"settings": {}, "settings": {},
"extensions": [ "extensions": [
"dbaeumer.vscode-eslint" "streetsidesoftware.code-spell-checker"
] ]
} }
}, },
@@ -22,18 +23,14 @@
// Use 'forwardPorts' to make a list of ports inside the container available locally. // Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [3000], // "forwardPorts": [3000],
// Use 'portsAttributes' to set default properties for specific forwarded ports. // Use 'portsAttributes' to set default properties for specific forwarded ports.
// More info: https://containers.dev/implementors/json_reference/#port-attributes
"portsAttributes": { "portsAttributes": {
"3000": { "9000": {
"label": "Hello Remote World", "label": "Hello Remote World",
"onAutoForward": "notify" "onAutoForward": "notify"
} }
}, },
// Use 'otherPortsAttributes' to configure any ports that aren't configured using 'portsAttributes'.
// "otherPortsAttributes": {
// "onAutoForward": "silent"
// },
// Use 'postCreateCommand' to run commands after the container is created. // Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "yarn install" "postCreateCommand": "yarn install"

View File

@@ -2,7 +2,7 @@
[![Open in Dev Containers](https://img.shields.io/static/v1?label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/microsoft/vscode-remote-try-node) [![Open in Dev Containers](https://img.shields.io/static/v1?label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/microsoft/vscode-remote-try-node)
A **development container** is a running [Docker](https://www.docker.com) container with a well-defined tool/runtime stack and its prerequisites. You can try out development containers with **[GitHub Codespaces](https://github.com/features/codespaces)** or **[Visual Studio Code Dev Containers](https://aka.ms/vscode-remote/containers)**. A **development container** is a running container with a well-defined tool/runtime stack and its prerequisites. You can try out development containers with **[GitHub Codespaces](https://github.com/features/codespaces)** or **[Visual Studio Code Dev Containers](https://aka.ms/vscode-remote/containers)**.
This is a sample project that lets you try out either option in a few easy steps. We have a variety of other [vscode-remote-try-*](https://github.com/search?q=org%3Amicrosoft+vscode-remote-try-&type=Repositories) sample projects, too. This is a sample project that lets you try out either option in a few easy steps. We have a variety of other [vscode-remote-try-*](https://github.com/search?q=org%3Amicrosoft+vscode-remote-try-&type=Repositories) sample projects, too.
@@ -12,8 +12,9 @@ This is a sample project that lets you try out either option in a few easy steps
### GitHub Codespaces ### GitHub Codespaces
Follow these steps to open this sample in a Codespace: Follow these steps to open this sample in a Codespace:
1. Click the Code drop-down menu and select the **Open with Codespaces** option. 1. Click the **Code** drop-down menu.
1. Select **+ New codespace** at the bottom on the pane. 2. Click on the **Codespaces** tab.
1. Click **Create codespace on main** .
For more info, check out the [GitHub documentation](https://docs.github.com/en/free-pro-team@latest/github/developing-online-with-codespaces/creating-a-codespace#creating-a-codespace). For more info, check out the [GitHub documentation](https://docs.github.com/en/free-pro-team@latest/github/developing-online-with-codespaces/creating-a-codespace#creating-a-codespace).
@@ -41,14 +42,14 @@ Follow these steps to open this sample in a container using the VS Code Dev Cont
Once you have this sample opened, you'll be able to work with it like you would locally. Once you have this sample opened, you'll be able to work with it like you would locally.
> **Note:** This container runs as a non-root user with sudo access by default. Uncomment `"remoteUser": "root"` in `.devcontainer/devcontainer.json` if you'd prefer to run as root.
Some things to try: Some things to try:
1. **Edit:** 1. **Edit:**
- Open `server.js` - Open `server.js`
- Try adding some code and check out the language features. - Try adding some code and check out the language features.
- Notice that `eslint` and the `vscode-eslint` extension are already installed in the container since the `.devcontainer/devcontainer.json` lists `"dbaeumer.vscode-eslint"` as an extension to install automatically when the container is created. - Make a spelling mistake and notice it is detected. The [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) extension was automatically installed because it is referenced in `.devcontainer/devcontainer.json`.
- Also notice that `eslint` and the [ESLint extension](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) are installed. Tools are installed in the `mcr.microsoft.com/devcontainers/javascript-node` image and Dev Container settings and metadata are automatically picked up from [image labels](https://containers.dev/implementors/reference/#labels).
2. **Terminal:** Press <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>\`</kbd> and type `uname` and other Linux commands from the terminal window. 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:** 3. **Build, Run, and Debug:**
- Open `server.js` - Open `server.js`
@@ -73,6 +74,13 @@ Some things to try:
- Modify the `"onAutoForward"` attribute in your `portsAttributes` from `"notify"` to `"openBrowser"`. - Modify the `"onAutoForward"` attribute in your `portsAttributes` from `"notify"` to `"openBrowser"`.
- Press <kbd>F1</kbd> and select the **Dev Containers: Rebuild Container** or **Codespaces: Rebuild Container** command so the modifications are picked up. - Press <kbd>F1</kbd> and select the **Dev Containers: Rebuild Container** or **Codespaces: Rebuild Container** command so the modifications are picked up.
5. **Install the GitHub CLI using a Dev Container Feature:**
- Press <kbd>F1</kbd> and select the **Dev Containers: Configure Container Features...** or **Codespaces: Configure Container Features...** command.
- Type "github" in the text box at the top.
- Check the check box next to "GitHub CLI" (published by devcontainers)
- Click OK
- Press <kbd>F1</kbd> and select the **Dev Containers: Rebuild Container** or **Codespaces: Rebuild Container** command so the modifications are picked up.
## Contributing ## Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a This project welcomes contributions and suggestions. Most contributions require you to agree to a

View File

@@ -1,8 +0,0 @@
pool:
vmImage: ubuntu-latest
trigger:
- main
variables:
Codeql.Enabled: true