// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/dotnet-mssql
{
	"name": ".NET (C#), Node.js (TypeScript) & MS SQL",
	"dockerComposeFile": "docker-compose.yml",
	"service": "app",
	"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
	// Features to add to the dev container. More info: https://containers.dev/features.
	// "features": {},
	// Configure tool-specific properties.
	"customizations": {
		// Configure properties specific to VS Code.
		"vscode": {
			// Set *default* container specific settings.json values on container create.
			"settings": {
				"mssql.connections": [
					{
						"server": "localhost,1433",
						"database": "",
						"authenticationType": "SqlLogin",
						"user": "sa",
						"password": "P@ssw0rd",
						"emptyPasswordInput": false,
						"savePassword": false,
						"profileName": "mssql-container"
					}
				]
			},
			// Add the IDs of extensions you want installed when the container is created.
			"extensions": [
				"ms-dotnettools.csharp",
				"ms-mssql.mssql"
			]
		}
	},
	// Use 'forwardPorts' to make a list of ports inside the container available locally.
  "forwardPorts": [
	4200,
	5000,
	5001,
	1433
  ],
  "portsAttributes": {
	"5001": {
	  "protocol": "https"
	},
	"1433": {
	  "protocol": "tcp"
	}
  },
  // postCreateCommand.sh parameters: $1=SA password, $2=dacpac path, $3=sql script(s) path
  "containerEnv": {
	"SA_PASSWORD": "P@ssw0rd",
	"ACCEPT_EULA": "Y"
  },
  "postCreateCommand": "bash .devcontainer/mssql/postCreateCommand.sh 'P@ssw0rd' './bin/Debug/' './.devcontainer/mssql/'"
	// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
	// "remoteUser": "root"
}