diff --git a/.gitignore b/.gitignore index 73be94f448..117af763ec 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,13 @@ **/bin **/obj +**/out +**/target +**/.vscode/ipch +**/.build +**/node_modules *.DS_Store *.pyc Thumbs.db -**/.build -**/node_modules *.out *.log -**/.vscode/ipch +*.class diff --git a/README.md b/README.md index 802cb22c1d..020fad8cd4 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ Visual Studio Code Remote allows you to open any folder inside (or mounted into) **[See here to learn more about VS Code Remote](https://aka.ms/vscode-remote)**. -This repository contains a set of **dev container definitions** made up of files like `devContainer.json` that can be added to existing projects to get you up and running in a containerized environment. +This repository contains a set of **dev container definitions** made up of files like `devContainer.json` that can be added to existing projects to get you up and running in a containerized environment. These files describe the conatiner image, any runtime arguments for when the conatiner is started, and any VS Code extensions that should be installed into it. ## Trying a definition diff --git a/container-templates/docker-compose/dev-container.dockerfile b/container-templates/docker-compose/dev-container.dockerfile index 41f5518a58..c2590d5928 100644 --- a/container-templates/docker-compose/dev-container.dockerfile +++ b/container-templates/docker-compose/dev-container.dockerfile @@ -17,6 +17,5 @@ RUN apt-get update \ # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/container-templates/dockerfile/dev-container.dockerfile b/container-templates/dockerfile/dev-container.dockerfile index c156457a95..a2b71aa63c 100644 --- a/container-templates/dockerfile/dev-container.dockerfile +++ b/container-templates/dockerfile/dev-container.dockerfile @@ -12,6 +12,5 @@ RUN apt-get update \ # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/azure-cli/dev-container.dockerfile b/containers/azure-cli/dev-container.dockerfile index 4a65a84932..6b9f7ca089 100644 --- a/containers/azure-cli/dev-container.dockerfile +++ b/containers/azure-cli/dev-container.dockerfile @@ -13,6 +13,5 @@ RUN apt-get install -y apt-transport-https curl gnupg2 lsb-release \ # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/azure-functions-node-8/dev-container.dockerfile b/containers/azure-functions-node-8/dev-container.dockerfile index 638d729487..fc7d834f1c 100644 --- a/containers/azure-functions-node-8/dev-container.dockerfile +++ b/containers/azure-functions-node-8/dev-container.dockerfile @@ -22,5 +22,4 @@ RUN apt-get install -y apt-transport-https \ # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/azure-hdinsight-python-3/dev-container.dockerfile b/containers/azure-hdinsight-python-3/dev-container.dockerfile index dc8f4f4cdc..0c702f7538 100644 --- a/containers/azure-hdinsight-python-3/dev-container.dockerfile +++ b/containers/azure-hdinsight-python-3/dev-container.dockerfile @@ -11,5 +11,4 @@ RUN apt-get install -y python3 python3-pip # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* \ No newline at end of file diff --git a/containers/azure-machine-learning-python-3/dev-container.dockerfile b/containers/azure-machine-learning-python-3/dev-container.dockerfile index 65e1572f6c..2bc78d46a7 100644 --- a/containers/azure-machine-learning-python-3/dev-container.dockerfile +++ b/containers/azure-machine-learning-python-3/dev-container.dockerfile @@ -17,5 +17,4 @@ RUN pip install pylint # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/azure-terraform/dev-container.dockerfile b/containers/azure-terraform/dev-container.dockerfile index 426b1f14a3..c0f3fe0a7b 100644 --- a/containers/azure-terraform/dev-container.dockerfile +++ b/containers/azure-terraform/dev-container.dockerfile @@ -24,5 +24,4 @@ RUN mkdir -p /tmp/docker-downloads \ # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* \ No newline at end of file diff --git a/containers/cpp/dev-container.dockerfile b/containers/cpp/dev-container.dockerfile index 2f9fe9a57c..c1800f01b1 100644 --- a/containers/cpp/dev-container.dockerfile +++ b/containers/cpp/dev-container.dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:latest +FROM ubuntu:1804 # Install git RUN apt-get update && apt-get -y install git @@ -9,5 +9,4 @@ RUN apt-get -y install build-essential cmake cppcheck valgrind # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/dart-web/dev-container.dockerfile b/containers/dart-web/dev-container.dockerfile index 3801c839d9..6f717cbe1e 100644 --- a/containers/dart-web/dev-container.dockerfile +++ b/containers/dart-web/dev-container.dockerfile @@ -10,6 +10,5 @@ RUN apt-get update && apt-get -y install git # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/docker-in-docker/dev-container.dockerfile b/containers/docker-in-docker/dev-container.dockerfile index 3f1d023fbb..4c5f7a7524 100644 --- a/containers/docker-in-docker/dev-container.dockerfile +++ b/containers/docker-in-docker/dev-container.dockerfile @@ -1,5 +1,5 @@ # Note: You can use any Debian/Ubuntu based image you want. -FROM ubuntu:latest +FROM ubuntu:1804 # Install git RUN apt-get update \ @@ -15,6 +15,5 @@ RUN apt-get install -y apt-transport-https ca-certificates curl gnupg-agent soft # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/dotnetcore-2.2-fsharp/dev-container.dockerfile b/containers/dotnetcore-2.2-fsharp/dev-container.dockerfile index dc744afd13..4be1f5051a 100644 --- a/containers/dotnetcore-2.2-fsharp/dev-container.dockerfile +++ b/containers/dotnetcore-2.2-fsharp/dev-container.dockerfile @@ -12,6 +12,5 @@ RUN apt-get install -y fsharp # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/dotnetcore-2.2/dev-container.dockerfile b/containers/dotnetcore-2.2/dev-container.dockerfile index bca2b40b0c..39718fe767 100644 --- a/containers/dotnetcore-2.2/dev-container.dockerfile +++ b/containers/dotnetcore-2.2/dev-container.dockerfile @@ -6,5 +6,4 @@ RUN apt-get update && apt-get -y install git # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/go/dev-container.dockerfile b/containers/go/dev-container.dockerfile index 2100c39f16..ce007963ea 100644 --- a/containers/go/dev-container.dockerfile +++ b/containers/go/dev-container.dockerfile @@ -24,6 +24,5 @@ RUN apt-get update && apt-get -y install git # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/java-8-maven/dev-container.dockerfile b/containers/java-8-maven/dev-container.dockerfile index 745ec7c3cd..c0619f7a87 100644 --- a/containers/java-8-maven/dev-container.dockerfile +++ b/containers/java-8-maven/dev-container.dockerfile @@ -6,6 +6,5 @@ RUN apt-get update && apt-get -y install git # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* \ No newline at end of file diff --git a/containers/node-8-mongo/.vscode/devContainer.json b/containers/javascript-node-8-mongo/.vscode/devContainer.json similarity index 100% rename from containers/node-8-mongo/.vscode/devContainer.json rename to containers/javascript-node-8-mongo/.vscode/devContainer.json diff --git a/containers/node-8-mongo/.vscode/launch.json b/containers/javascript-node-8-mongo/.vscode/launch.json similarity index 100% rename from containers/node-8-mongo/.vscode/launch.json rename to containers/javascript-node-8-mongo/.vscode/launch.json diff --git a/containers/node-8-mongo/dev-container.dockerfile b/containers/javascript-node-8-mongo/dev-container.dockerfile similarity index 88% rename from containers/node-8-mongo/dev-container.dockerfile rename to containers/javascript-node-8-mongo/dev-container.dockerfile index ec56605c31..9a30df68a8 100644 --- a/containers/node-8-mongo/dev-container.dockerfile +++ b/containers/javascript-node-8-mongo/dev-container.dockerfile @@ -9,5 +9,4 @@ RUN npm install -g eslint # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/node-8-mongo/docker-compose.dev-container.yml b/containers/javascript-node-8-mongo/docker-compose.dev-container.yml similarity index 100% rename from containers/node-8-mongo/docker-compose.dev-container.yml rename to containers/javascript-node-8-mongo/docker-compose.dev-container.yml diff --git a/containers/node-8-mongo/test-project/Dockerfile b/containers/javascript-node-8-mongo/test-project/Dockerfile similarity index 100% rename from containers/node-8-mongo/test-project/Dockerfile rename to containers/javascript-node-8-mongo/test-project/Dockerfile diff --git a/containers/node-8-mongo/test-project/docker-compose.yml b/containers/javascript-node-8-mongo/test-project/docker-compose.yml similarity index 100% rename from containers/node-8-mongo/test-project/docker-compose.yml rename to containers/javascript-node-8-mongo/test-project/docker-compose.yml diff --git a/containers/node-8-mongo/test-project/package-lock.json b/containers/javascript-node-8-mongo/test-project/package-lock.json similarity index 100% rename from containers/node-8-mongo/test-project/package-lock.json rename to containers/javascript-node-8-mongo/test-project/package-lock.json diff --git a/containers/node-8-mongo/test-project/package.json b/containers/javascript-node-8-mongo/test-project/package.json similarity index 100% rename from containers/node-8-mongo/test-project/package.json rename to containers/javascript-node-8-mongo/test-project/package.json diff --git a/containers/node-8-mongo/test-project/server.js b/containers/javascript-node-8-mongo/test-project/server.js similarity index 100% rename from containers/node-8-mongo/test-project/server.js rename to containers/javascript-node-8-mongo/test-project/server.js diff --git a/containers/node-8/.vscode/devContainer.json b/containers/javascript-node-8/.vscode/devContainer.json similarity index 100% rename from containers/node-8/.vscode/devContainer.json rename to containers/javascript-node-8/.vscode/devContainer.json diff --git a/containers/node-8/.vscode/launch.json b/containers/javascript-node-8/.vscode/launch.json similarity index 100% rename from containers/node-8/.vscode/launch.json rename to containers/javascript-node-8/.vscode/launch.json diff --git a/containers/node-8/.vscodeignore b/containers/javascript-node-8/.vscodeignore similarity index 100% rename from containers/node-8/.vscodeignore rename to containers/javascript-node-8/.vscodeignore diff --git a/containers/node-8/dev-container.dockerfile b/containers/javascript-node-8/dev-container.dockerfile similarity index 88% rename from containers/node-8/dev-container.dockerfile rename to containers/javascript-node-8/dev-container.dockerfile index ec56605c31..9a30df68a8 100644 --- a/containers/node-8/dev-container.dockerfile +++ b/containers/javascript-node-8/dev-container.dockerfile @@ -9,5 +9,4 @@ RUN npm install -g eslint # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/node-8/test-project/.eslintrc.json b/containers/javascript-node-8/test-project/.eslintrc.json similarity index 100% rename from containers/node-8/test-project/.eslintrc.json rename to containers/javascript-node-8/test-project/.eslintrc.json diff --git a/containers/node-8/test-project/package-lock.json b/containers/javascript-node-8/test-project/package-lock.json similarity index 100% rename from containers/node-8/test-project/package-lock.json rename to containers/javascript-node-8/test-project/package-lock.json diff --git a/containers/node-8/test-project/package.json b/containers/javascript-node-8/test-project/package.json similarity index 100% rename from containers/node-8/test-project/package.json rename to containers/javascript-node-8/test-project/package.json diff --git a/containers/node-8/test-project/server.js b/containers/javascript-node-8/test-project/server.js similarity index 100% rename from containers/node-8/test-project/server.js rename to containers/javascript-node-8/test-project/server.js diff --git a/containers/kubernetes-helm/dev-container.dockerfile b/containers/kubernetes-helm/dev-container.dockerfile index 94022188ce..89a8ef6b22 100644 --- a/containers/kubernetes-helm/dev-container.dockerfile +++ b/containers/kubernetes-helm/dev-container.dockerfile @@ -31,5 +31,4 @@ RUN echo 'if [ "$SYNC_LOCALHOST_KUBECONFIG" == "true" ]; then \ # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/php-7/dev-container.dockerfile b/containers/php-7/dev-container.dockerfile index 58ec11f1f0..5262222b65 100644 --- a/containers/php-7/dev-container.dockerfile +++ b/containers/php-7/dev-container.dockerfile @@ -12,6 +12,5 @@ RUN apt-get update && apt-get -y install git # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/plantuml/dev-container.dockerfile b/containers/plantuml/dev-container.dockerfile index 3be95269b1..681a4d8526 100644 --- a/containers/plantuml/dev-container.dockerfile +++ b/containers/plantuml/dev-container.dockerfile @@ -1,4 +1,4 @@ -FROM java:latest +FROM java:11 # Install required tools RUN apt-get update \ @@ -10,6 +10,5 @@ RUN apt-get install -y graphviz # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/powershell/dev-container.dockerfile b/containers/powershell/dev-container.dockerfile index d38c79e015..d9077c6418 100644 --- a/containers/powershell/dev-container.dockerfile +++ b/containers/powershell/dev-container.dockerfile @@ -2,5 +2,9 @@ FROM microsoft/powershell # Install required tools RUN apt-get update \ - && apt-get install -y git \ - && rm -rf /var/lib/apt/lists/* + && apt-get install -y git + +# Clean up +RUN apt-get autoremove -y \ + && apt-get clean -y \ + && rm -rf /var/lib/apt/lists/* diff --git a/containers/python-2/dev-container.dockerfile b/containers/python-2/dev-container.dockerfile index 77b08f2358..c903789409 100644 --- a/containers/python-2/dev-container.dockerfile +++ b/containers/python-2/dev-container.dockerfile @@ -6,10 +6,9 @@ RUN pip install pylint RUN apt-get update && apt-get -y install git # Install any missing dependencies for enhanced language service -RUN apt-get install libicu57 +RUN apt-get install -y libicu57 # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/python-3-django/dev-container.dockerfile b/containers/python-3-django/dev-container.dockerfile index d358f37ed6..37c9df2794 100644 --- a/containers/python-3-django/dev-container.dockerfile +++ b/containers/python-3-django/dev-container.dockerfile @@ -15,10 +15,9 @@ ADD . /app/ RUN apt-get update && apt-get -y install git # Install any missing dependencies for enhanced language service -RUN apt-get install libicu57 +RUN apt-get install -y libicu57 # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/python-3-flask-redis/dev-container.dockerfile b/containers/python-3-flask-redis/dev-container.dockerfile index a595772a11..3197aea229 100644 --- a/containers/python-3-flask-redis/dev-container.dockerfile +++ b/containers/python-3-flask-redis/dev-container.dockerfile @@ -12,10 +12,9 @@ RUN pip install pylint RUN apt-get update && apt-get -y install git # Install any missing dependencies for enhanced language service -RUN apt-get install libicu57 +RUN apt-get install -y libicu57 # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/python-3-jupyter-pyspark/.vscode/settings.json b/containers/python-3-jupyter-pyspark/.vscode/settings.json index 7b330bd8a7..fc9ffdf729 100644 --- a/containers/python-3-jupyter-pyspark/.vscode/settings.json +++ b/containers/python-3-jupyter-pyspark/.vscode/settings.json @@ -1,5 +1,5 @@ { - "python.linting.enabled": true, + "python.linting.enabled": false, "python.dataScience.useDefaultConfigForJupyter": true, "python.dataScience.notebookFileRoot": "${workspaceFolder}/test-project", "python.pythonPath": "/opt/conda/bin/python" diff --git a/containers/python-3-jupyter-pyspark/dev-container.dockerfile b/containers/python-3-jupyter-pyspark/dev-container.dockerfile index 4f0a72e3b0..0ed7173beb 100644 --- a/containers/python-3-jupyter-pyspark/dev-container.dockerfile +++ b/containers/python-3-jupyter-pyspark/dev-container.dockerfile @@ -6,10 +6,9 @@ USER root RUN apt-get update && apt-get -y install git # Install any missing dependencies for enhanced language service -RUN apt-get install libicu57 +RUN apt-get install -y libicu57 # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/python-3/dev-container.dockerfile b/containers/python-3/dev-container.dockerfile index aacb5e8585..7964ff91f9 100644 --- a/containers/python-3/dev-container.dockerfile +++ b/containers/python-3/dev-container.dockerfile @@ -6,10 +6,9 @@ RUN pip install pylint RUN apt-get update && apt-get -y install git # Install any missing dependencies for enhanced language service -RUN apt-get install libicu57 +RUN apt-get install -y libicu57 # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/ruby-2/dev-container.dockerfile b/containers/ruby-2/dev-container.dockerfile index b08adc896f..954bf9e705 100644 --- a/containers/ruby-2/dev-container.dockerfile +++ b/containers/ruby-2/dev-container.dockerfile @@ -10,6 +10,5 @@ RUN apt-get update && apt-get -y install git # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/rust/.vscode/launch.json b/containers/rust/.vscode/launch.json index acc19c79ab..678d53a18f 100644 --- a/containers/rust/.vscode/launch.json +++ b/containers/rust/.vscode/launch.json @@ -12,7 +12,8 @@ "args": [ "build", "--bin=hello_world", - "--package=hello_world" + "--package=hello_world", + "--manifest-path=test-project/Cargo.toml" ], "filter": { "kind": "bin" @@ -30,7 +31,8 @@ "test", "--no-run", "--bin=hello_world", - "--package=hello_world" + "--package=hello_world", + "--manifest-path=test-project/Cargo.toml" ], "filter": { "kind": "bin" diff --git a/containers/rust/dev-container.dockerfile b/containers/rust/dev-container.dockerfile index 3cc85de0fb..82c2d07312 100644 --- a/containers/rust/dev-container.dockerfile +++ b/containers/rust/dev-container.dockerfile @@ -7,10 +7,9 @@ RUN rustup component add rls rust-analysis rust-src RUN apt-get update && apt-get -y install git # Install other dependencies -RUN apt-get install lldb-3.9 +RUN apt-get install -y lldb-3.9 # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/swift-4/.vscode/tasks.json b/containers/swift-4/.vscode/tasks.json index d82610e212..d1c29e684b 100644 --- a/containers/swift-4/.vscode/tasks.json +++ b/containers/swift-4/.vscode/tasks.json @@ -6,7 +6,7 @@ { "label": "swift-build", "type": "shell", - "command": "swift build", + "command": "cd test-project && swift build", "problemMatcher": [] } ] diff --git a/containers/swift-4/dev-container.dockerfile b/containers/swift-4/dev-container.dockerfile index f23e3a02d0..2703078565 100644 --- a/containers/swift-4/dev-container.dockerfile +++ b/containers/swift-4/dev-container.dockerfile @@ -12,6 +12,5 @@ RUN cd sourcekite && swift build -Xlinker -l:sourcekitdInProc -c release # Clean up RUN apt-get autoremove -y \ && apt-get clean -y \ - && apt-get autoclean -y \ && rm -rf /var/lib/apt/lists/* diff --git a/containers/typescript/.vscode/devContainer.json b/containers/typescript-node-8/.vscode/devContainer.json similarity index 87% rename from containers/typescript/.vscode/devContainer.json rename to containers/typescript-node-8/.vscode/devContainer.json index f2cda05758..672c3a67f7 100644 --- a/containers/typescript/.vscode/devContainer.json +++ b/containers/typescript-node-8/.vscode/devContainer.json @@ -1,7 +1,7 @@ { "name": "TypeScript", "dockerFile": "dev-container.dockerfile", - "appPort": 8090, + "appPort": 3000, "extensions": [ "ms-vscode.vscode-typescript-tslint-plugin" ] diff --git a/containers/typescript/.vscode/launch.json b/containers/typescript-node-8/.vscode/launch.json similarity index 82% rename from containers/typescript/.vscode/launch.json rename to containers/typescript-node-8/.vscode/launch.json index 87008d97f1..35130df4b4 100644 --- a/containers/typescript/.vscode/launch.json +++ b/containers/typescript-node-8/.vscode/launch.json @@ -9,7 +9,8 @@ "request": "launch", "name": "Launch Program", "program": "${workspaceFolder}/test-project/out/server.js", - "preLaunchTask": "npm: compile" + "cwd": "${workspaceFolder}/test-project", + "preLaunchTask": "compile" } ] } \ No newline at end of file diff --git a/containers/typescript/.vscode/settings.json b/containers/typescript-node-8/.vscode/settings.json similarity index 100% rename from containers/typescript/.vscode/settings.json rename to containers/typescript-node-8/.vscode/settings.json diff --git a/containers/typescript-node-8/.vscode/tasks.json b/containers/typescript-node-8/.vscode/tasks.json new file mode 100644 index 0000000000..627aa64265 --- /dev/null +++ b/containers/typescript-node-8/.vscode/tasks.json @@ -0,0 +1,14 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + "version": "2.0.0", + "tasks": [ + { + "label": "compile", + "type": "shell", + "command": "cd test-project && npm run compile", + "problemMatcher": "$tsc" + + } + ] +} \ No newline at end of file diff --git a/containers/typescript/.vscodeignore b/containers/typescript-node-8/.vscodeignore similarity index 100% rename from containers/typescript/.vscodeignore rename to containers/typescript-node-8/.vscodeignore diff --git a/containers/typescript-node-8/dev-container.dockerfile b/containers/typescript-node-8/dev-container.dockerfile new file mode 100644 index 0000000000..da562b6864 --- /dev/null +++ b/containers/typescript-node-8/dev-container.dockerfile @@ -0,0 +1,12 @@ +FROM node:8-slim + +# Install git +RUN apt-get update && apt-get -y install git + +# Install tslint +RUN npm install -g tslint typescript + +# Clean up +RUN apt-get autoremove -y \ + && apt-get clean -y \ + && rm -rf /var/lib/apt/lists/* diff --git a/containers/typescript-node-8/test-project/package-lock.json b/containers/typescript-node-8/test-project/package-lock.json new file mode 100644 index 0000000000..7c04870852 --- /dev/null +++ b/containers/typescript-node-8/test-project/package-lock.json @@ -0,0 +1,761 @@ +{ + "name": "docker_web_app", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@types/body-parser": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.17.0.tgz", + "integrity": "sha512-a2+YeUjPkztKJu5aIF2yArYFQQp8d51wZ7DavSHjFuY1mqVgidGyzEQ41JIVNy82fXj8yPgy2vJmfIywgESW6w==", + "dev": true, + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/connect": { + "version": "3.4.32", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.32.tgz", + "integrity": "sha512-4r8qa0quOvh7lGD0pre62CAb1oni1OO6ecJLGCezTmhQ8Fz50Arx9RUszryR8KlgK6avuSXvviL6yWyViQABOg==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/express": { + "version": "4.16.1", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.16.1.tgz", + "integrity": "sha512-V0clmJow23WeyblmACoxbHBu2JKlE5TiIme6Lem14FnPW9gsttyHtk6wq7njcdIWH1njAaFgR8gW09lgY98gQg==", + "dev": true, + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.16.2", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.2.tgz", + "integrity": "sha512-qgc8tjnDrc789rAQed8NoiFLV5VGcItA4yWNFphqGU0RcuuQngD00g3LHhWIK3HQ2XeDgVCmlNPDlqi3fWBHnQ==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/range-parser": "*" + } + }, + "@types/mime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-2.0.1.tgz", + "integrity": "sha512-FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw==", + "dev": true + }, + "@types/node": { + "version": "11.11.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-11.11.6.tgz", + "integrity": "sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==", + "dev": true + }, + "@types/range-parser": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz", + "integrity": "sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==", + "dev": true + }, + "@types/serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-/BZ4QRLpH/bNYgZgwhKEh+5AsboDBcUdlBYgzoLX0fpj3Y2gp6EApyOlM3bK53wQS/OE1SrdSYBAbux2D1528Q==", + "dev": true, + "requires": { + "@types/express-serve-static-core": "*", + "@types/mime": "*" + } + }, + "accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "requires": { + "mime-types": "~2.1.18", + "negotiator": "0.6.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + } + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "body-parser": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", + "requires": { + "bytes": "3.0.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "commander": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "express": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", + "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", + "requires": { + "accepts": "~1.3.5", + "array-flatten": "1.1.1", + "body-parser": "1.18.3", + "content-disposition": "0.5.2", + "content-type": "~1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.1.1", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.4", + "qs": "6.5.2", + "range-parser": "~1.2.0", + "safe-buffer": "5.1.2", + "send": "0.16.2", + "serve-static": "1.13.2", + "setprototypeof": "1.1.0", + "statuses": "~1.4.0", + "type-is": "~1.6.16", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + } + }, + "finalhandler": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.4.0", + "unpipe": "~1.0.0" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ipaddr.js": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", + "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=" + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.0.tgz", + "integrity": "sha512-pZZoSxcCYco+DIKBTimr67J6Hy+EYGZDY/HCWC+iAEA9h1ByhMXAIVUXMcMFpOCxQ/xjXmPI2MkDL5HRm5eFrQ==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + }, + "mime-db": { + "version": "1.38.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz", + "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==" + }, + "mime-types": { + "version": "2.1.22", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz", + "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==", + "requires": { + "mime-db": "~1.38.0" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "proxy-addr": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", + "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", + "requires": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.8.0" + } + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + }, + "raw-body": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", + "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", + "unpipe": "1.0.0" + } + }, + "resolve": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz", + "integrity": "sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" + } + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", + "send": "0.16.2" + } + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "dev": true + }, + "tslint": { + "version": "5.14.0", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.14.0.tgz", + "integrity": "sha512-IUla/ieHVnB8Le7LdQFRGlVJid2T/gaJe5VkjzRVSRR6pA2ODYrnfR1hmxi+5+au9l50jBwpbBL34txgv4NnTQ==", + "dev": true, + "requires": { + "babel-code-frame": "^6.22.0", + "builtin-modules": "^1.1.1", + "chalk": "^2.3.0", + "commander": "^2.12.1", + "diff": "^3.2.0", + "glob": "^7.1.1", + "js-yaml": "^3.7.0", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "resolve": "^1.3.2", + "semver": "^5.3.0", + "tslib": "^1.8.0", + "tsutils": "^2.29.0" + } + }, + "tsutils": { + "version": "2.29.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", + "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + } + }, + "type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.18" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + } + } +} diff --git a/containers/typescript/test-project/package.json b/containers/typescript-node-8/test-project/package.json similarity index 79% rename from containers/typescript/test-project/package.json rename to containers/typescript-node-8/test-project/package.json index 628715ce0c..875f40abb8 100644 --- a/containers/typescript/test-project/package.json +++ b/containers/typescript-node-8/test-project/package.json @@ -6,7 +6,7 @@ "author": "First Last ", "main": "out/server.js", "scripts": { - "compile": "tsc -p tsconfig.json", + "compile": "node_modules/.bin/tsc -p tsconfig.json", "start": "node out/server.js" }, "dependencies": { @@ -14,7 +14,6 @@ }, "devDependencies": { "@types/express": "^4.16.0", - "tslint": "^5.11.0", - "typescript": "3.1.4" + "tslint": "^5.11.0" } } diff --git a/containers/typescript/test-project/src/server.ts b/containers/typescript-node-8/test-project/src/server.ts similarity index 96% rename from containers/typescript/test-project/src/server.ts rename to containers/typescript-node-8/test-project/src/server.ts index eb79d444ad..3a4eeda92e 100644 --- a/containers/typescript/test-project/src/server.ts +++ b/containers/typescript-node-8/test-project/src/server.ts @@ -6,7 +6,7 @@ import * as express from 'express'; // Constants -const PORT = 8090; +const PORT = 3000; const HOST = '0.0.0.0'; // App diff --git a/containers/typescript/test-project/tsconfig.json b/containers/typescript-node-8/test-project/tsconfig.json similarity index 71% rename from containers/typescript/test-project/tsconfig.json rename to containers/typescript-node-8/test-project/tsconfig.json index f229880210..f1d0e44df7 100644 --- a/containers/typescript/test-project/tsconfig.json +++ b/containers/typescript-node-8/test-project/tsconfig.json @@ -3,9 +3,11 @@ "target": "es6", "module": "commonjs", "strict": true, - "outDir": "out" + "outDir": "out", + "sourceMap": true }, "exclude": [ + "out", "node_modules" ] } \ No newline at end of file diff --git a/containers/typescript/test-project/tslint.json b/containers/typescript-node-8/test-project/tslint.json similarity index 100% rename from containers/typescript/test-project/tslint.json rename to containers/typescript-node-8/test-project/tslint.json diff --git a/containers/typescript/dev-container.dockerfile b/containers/typescript/dev-container.dockerfile deleted file mode 100644 index 6362023ecf..0000000000 --- a/containers/typescript/dev-container.dockerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM chrmarti/node:latest - -RUN npm install -g tslint typescript