add configuration to use sparkjava sample with Docker Dev Environments feature (#261)
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
This commit is contained in:
		
							parent
							
								
									f716bfb382
								
							
						
					
					
						commit
						00c7d85f0e
					
				
					 3 changed files with 34 additions and 0 deletions
				
			
		
							
								
								
									
										9
									
								
								sparkjava/.docker/docker-compose.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								sparkjava/.docker/docker-compose.yaml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,9 @@ | ||||||
|  | services: | ||||||
|  |   sparkjava: | ||||||
|  |     build: | ||||||
|  |       context: sparkjava | ||||||
|  |       target: dev-envs | ||||||
|  |     ports: | ||||||
|  |       - 8080:8080 | ||||||
|  |     volumes: | ||||||
|  |       - /var/run/docker.sock:/var/run/docker.sock | ||||||
|  | @ -59,3 +59,11 @@ Stopping sparkjava_sparkjava_1 ... done | ||||||
| Removing sparkjava_sparkjava_1 ... done | Removing sparkjava_sparkjava_1 ... done | ||||||
| Removing network sparkjava_default | Removing network sparkjava_default | ||||||
| ``` | ``` | ||||||
|  | 
 | ||||||
|  | ## Use with Docker Development Environments | ||||||
|  | 
 | ||||||
|  | You can use this sample with the Dev Environments feature of Docker Desktop.   | ||||||
|  | To develop directly sparkjava service inside containers, you just need to use the https git url of the sample:   | ||||||
|  | `https://github.com/docker/awesome-compose/tree/master/sparkjava` | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  |  | ||||||
|  | @ -1,3 +1,5 @@ | ||||||
|  | # syntax=docker/dockerfile:1.4 | ||||||
|  | 
 | ||||||
| FROM --platform=$BUILDPLATFORM maven:3.8.5-eclipse-temurin-17 AS build | FROM --platform=$BUILDPLATFORM maven:3.8.5-eclipse-temurin-17 AS build | ||||||
| WORKDIR /workdir/server | WORKDIR /workdir/server | ||||||
| COPY pom.xml /workdir/server/pom.xml | COPY pom.xml /workdir/server/pom.xml | ||||||
|  | @ -7,6 +9,21 @@ COPY src /workdir/server/src | ||||||
| 
 | 
 | ||||||
| RUN mvn --batch-mode clean compile assembly:single | RUN mvn --batch-mode clean compile assembly:single | ||||||
| 
 | 
 | ||||||
|  | FROM build AS dev-envs | ||||||
|  | RUN <<EOF | ||||||
|  | apt-get update | ||||||
|  | apt-get install -y --no-install-recommends git | ||||||
|  | EOF | ||||||
|  | 
 | ||||||
|  | RUN <<EOF | ||||||
|  | useradd -s /bin/bash -m vscode | ||||||
|  | groupadd docker | ||||||
|  | usermod -aG docker vscode | ||||||
|  | EOF | ||||||
|  | # install Docker tools (cli, buildx, compose) | ||||||
|  | COPY --from=gloursdocker/docker / / | ||||||
|  | CMD ["java", "-jar", "target/app.jar" ] | ||||||
|  | 
 | ||||||
| FROM eclipse-temurin:17-jre-focal | FROM eclipse-temurin:17-jre-focal | ||||||
| ARG DEPENDENCY=/workdir/server/target | ARG DEPENDENCY=/workdir/server/target | ||||||
| EXPOSE 8080 | EXPOSE 8080 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue