Skip to content

Instantly share code, notes, and snippets.

@fsabado
Last active October 19, 2025 07:00
Show Gist options
  • Select an option

  • Save fsabado/48b6bd8b7a6a764654273aaca53c2ffd to your computer and use it in GitHub Desktop.

Select an option

Save fsabado/48b6bd8b7a6a764654273aaca53c2ffd to your computer and use it in GitHub Desktop.
.devcontainer/devcontainer.json (Universal)
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/java
{
"name": "My Universal",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "fs8080/universal-dev-container:v1",
"features": {
"ghcr.io/devcontainers/features/java:1": {
"version": "21",
"additionalVersions": "17,11,8",
"installGradle": true
},
"ghcr.io/devcontainers/features/docker-outside-of-docker:1": {},
"ghcr.io/devcontainers/features/sshd:1": {
"gatewayPorts": "yes"
},
"ghcr.io/devcontainers/features/git:1": {},
"ghcr.io/devcontainers-extra/features/direnv:1": {}
},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [2222, 8080, 5005],
// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "direnv allow /workspaces/* || true",
// Configure tool-specific properties.
"customizations": {
"vscode": {
"extensions": [
"vscjava.vscode-java-pack",
"redhat.java",
"ms-azuretools.vscode-docker",
"EditorConfig.EditorConfig",
"esbenp.prettier-vscode",
"mhutchie.git-graph",
"naco-siren.gradle-language",
"vscjava.vscode-gradle",
"shengchen.vscode-checkstyle",
"visualstudioexptteam.vscodeintellicode",
"tailscale.vscode-tailscale",
"streetsidesoftware.code-spell-checker",
"mechatroner.rainbow-csv",
"aaron-bond.better-comments",
"njpwerner.autodocstring",
"shakram02.bash-beautify",
"adpyke.codesnap"
],
"settings": {
"java.configuration.updateBuildConfiguration": "automatic",
"editor.formatOnSave": true
}
}
}
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment