Cristiano Magro
2025-10-04 b4d2757897bd449ac31b7741749b9d635fe46aba
vcode ambiente sviluppo in docker
4 files added
82 ■■■■■ changed files
.devcontainer/Dockerfile 18 ●●●●● patch | view | raw | blame | history
.devcontainer/devcontainer.json 19 ●●●●● patch | view | raw | blame | history
.devcontainer/docker-compose.yml 11 ●●●●● patch | view | raw | blame | history
pom.xml 34 ●●●●● patch | view | raw | blame | history
.devcontainer/Dockerfile
New file
@@ -0,0 +1,18 @@
FROM openjdk:25-ea-18-slim
# Install tools (esempio: Maven)
RUN apt-get update && \
    apt-get install -y maven git curl unzip && \
    rm -rf /var/lib/apt/lists/*
# Crea utente vscode (richiesto per VS Code Dev Container)
RUN useradd -ms /bin/bash vscode && echo "vscode ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
# Imposta la directory di lavoro
WORKDIR /workspace
# Imposta utente vscode
USER vscode
ENV JAVA_HOME=/usr/local/openjdk-25
ENV PATH=$JAVA_HOME/bin:$PATH
.devcontainer/devcontainer.json
New file
@@ -0,0 +1,19 @@
{
  "name": "Java Dev Container",
  "dockerComposeFile": "docker-compose.yml",
  "service": "java-dev",
  "workspaceFolder": "/workspace",
  "customizations": {
    "vscode": {
      "settings": {
        "terminal.integrated.defaultProfile.linux": "bash"
      },
      "extensions": [
        "vscjava.vscode-java-pack",     // Java Extension Pack
        "pivotal.vscode-spring-boot",   // Spring support (opzionale)
        "test-editor.test-editor",      // Supporto ai test (opzionale)
        "redhat.java"                   // Supporto al linguaggio Java
      ]
    }
  }
}
.devcontainer/docker-compose.yml
New file
@@ -0,0 +1,11 @@
services:
  java-dev:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: java-dev
    volumes:
      - ..:/workspace:cached
    tty: true
    command: sleep infinity
pom.xml
New file
@@ -0,0 +1,34 @@
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>java-dev-container-project</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    <properties>
        <maven.compiler.source>25</maven.compiler.source>
        <maven.compiler.target>25</maven.compiler.target>
    </properties>
    <dependencies>
        <!-- Add your project dependencies here -->
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>25</source>
                    <target>25</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>