codespaces-io / codespaces

Devops Workspaces in a Box

Home Page:https://codespaces-io.github.io/codespaces/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unable to create public forwarded port in devcontainer

valhuber opened this issue · comments

This project explains how to forward ports manually, which works fine.

My objective is to simplify the instructions, in particular, to create forwarded the port via the .devcontainer. My source was this doc.

I duplicated the working project to create this new project, with an altered .devcontainer:

// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.194.0/containers/docker-existing-dockerfile
{
	"name": "Existing Dockerfile",

	// Sets the run context to one level up instead of the .devcontainer folder.
	"context": "..",

	// Update the 'dockerFile' property if you aren't using the standard 'Dockerfile' filename.
	"dockerFile": "../For_VSCode.dockerfile",

	// Set *default* container specific settings.json values on container create.
	"settings": {},

	// add network -- enable this as required, e.g., https://valhuber.github.io/ApiLogicServer/Database-Connectivity/
	// "runArgs": ["--network=dev-network"],

	// Add the IDs of extensions you want installed when the container is created.
	"extensions": ["ms-python.python"],
	
	"portsAttributes": {
		"5656": {
			"label": "AdminApp"
		}
	},

	// Use 'forwardPorts' to make a list of ports inside the container available locally.
	"forwardPorts": [
		5656
	]

	// Uncomment the next line to run commands after the container is created - for example installing curl.
	// "postCreateCommand": "apt-get update && apt-get install -y curl",

	// Uncomment when using a ptrace-based debugger like C++, Go, and Rust
	// "runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined" ],

	// Uncomment to use the Docker CLI from inside the container. See https://aka.ms/vscode-remote/samples/docker-from-docker.
	// "mounts": [ "source=/var/run/docker.sock,target=/var/run/docker.sock,type=bind" ],

	// Uncomment to connect as a non-root user if you've added one. See https://aka.ms/vscode-remote/containers/non-root.
	// "remoteUser": "vscode"
}

The port is, in fact, created. The problem appears to be that the port is not public. I verified that by doing it manually.

I tried to explore the code completion, to no avail:

Unable to make port public

....

So, seeking suggestions on creating a public port via the devcontainer.