Sign inSign up

vaibhavgawali/dotnet-node-python-openjdk

By vaibhavgawali

Updated 10 months ago

Dockerized .NET, Node.js, Python, and OpenJDK images for streamlined development workflows.

Image
Languages & frameworks
Machine learning & AI
Developer tools
1

558

vaibhavgawali/dotnet-node-python-openjdk repository overview

A polyglot developer container that brings together .NET SDK, Node.js, Python, and OpenJDK in a single, ready‑to‑use environment. Designed for developers who need a unified workspace for building cross‑platform applications, experimenting with hybrid workloads (.NET, Pyton, Node, Android SDK, OpenJDK, MAUI, Blazor), or running AI tooling alongside traditional runtimes.

This repository focuses on core runtimes and developer tooling. For AI‑specific tools, please see the companion repositories.

  1. vaibhavgawali/gemini-cli → Gemini CLI container for AI workflows
  2. vaibhavgawali/fabric-cli → Fabric CLI container for AI‑powered automation

These AI agents need the required tools from this image.

🔑 Image Contains
  1. .NET 10 SDK
  2. Node.js 22.x with npm preinstalled
  3. Python 3.x with pip, setuptools, wheel
  4. OpenJDK 21 for Java development
  5. Secure non‑root user (appuser) for safer builds
🔑 Key Benefits with this setup
  1. No need to install .NET, Node.js, Python, or Java locally.
  2. Your local machine stays clean.
  3. You can run scripts, apps, and binaries directly inside the container.
  4. Works consistently across different environments (Linux, macOS, Windows).
🚀 Quick Usage Examples

Pull the Image

docker pull vaibhavgawali/dotnet-node-python-openjdk:latest

Run Interactive Container

docker run -it --rm vaibhavgawali/dotnet-node-python-openjdk bash

Mount Local Workspace

docker run -it --rm -v $(pwd):/workspace vaibhavgawali/dotnet-node-python-openjdk bash
🔧 Verify Installed Runtimes

Inside the container, check versions:

dotnet --version
node --version
npm --version
python3 --version
java -version
🛠️ Example Workflows

Build a .NET MAUI Project

dotnet workload install maui
dotnet new maui -n MyMauiApp
dotnet build MyMauiApp

Suppose you have a .NET project in your current directory:

docker run --rm -v $(pwd):/workspace -w /workspace vaibhavgawali/dotnet-node-python-openjdk \
    dotnet run

👉 This runs your .NET app using the SDK inside the container, no local installation required.


Run a Node.js App

mkdir node-app && cd node-app
npm init -y
echo "console.log('Hello from Node.js!')" > index.js
node index.js

If you have index.js in your current directory:

docker run --rm -v $(pwd):/workspace -w /workspace vaibhavgawali/dotnet-node-python-openjdk \
    node index.js

👉 Node.js runs inside the container, so you don’t need Node/npm locally.


Use Python for Scripting

echo "print('Hello from Python!')" > script.py
python3 script.py

If you have script.py in your current directory:

docker run --rm -v $(pwd):/workspace -w /workspace vaibhavgawali/dotnet-node-python-openjdk \
    python3 script.py

👉 The container executes Python directly, even if Python isn’t installed on your PC.


Compile a Java Program

echo "public class Hello { public static void main(String[] args) { System.out.println(\"Hello from Java!\"); }}" > Hello.java
javac Hello.java
java Hello

If you have Hello.java in your current directory:

docker run --rm -v $(pwd):/workspace -w /workspace vaibhavgawali/dotnet-node-python-openjdk javac Hello.java

docker run --rm -v $(pwd):/workspace -w /workspace vaibhavgawali/dotnet-node-python-openjdk java Hello

👉 Java compilation and execution happen inside the container.

📚 References
  1. .NET Documentation
  2. Node.js Documentation
  3. Python Documentation
  4. OpenJDK Documentation
  5. Ubuntu Base Image
  6. Docker images docker file in GitHub

Tag summary

Content type

Image

Digest

sha256:30f99d3b8

Size

573.8 MB

Last updated

10 months ago

docker pull vaibhavgawali/dotnet-node-python-openjdk