41 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
| # We need JDK as some of the lessons needs to be able to compile Java code
 | |
| FROM docker.io/eclipse-temurin:23-jdk-noble
 | |
| 
 | |
| LABEL name="WebGoat: A deliberately insecure Web Application"
 | |
| LABEL maintainer="WebGoat team"
 | |
| 
 | |
| RUN \
 | |
|   useradd -ms /bin/bash webgoat && \
 | |
|   chgrp -R 0 /home/webgoat && \
 | |
|   chmod -R g=u /home/webgoat
 | |
| 
 | |
| USER webgoat
 | |
| 
 | |
| COPY --chown=webgoat target/webgoat-*.jar /home/webgoat/webgoat.jar
 | |
| 
 | |
| EXPOSE 8080
 | |
| EXPOSE 9090
 | |
| 
 | |
| ENV TZ=Europe/Amsterdam
 | |
| 
 | |
| WORKDIR /home/webgoat
 | |
| ENTRYPOINT [ "java", \
 | |
|    "-Duser.home=/home/webgoat", \
 | |
|    "-Dfile.encoding=UTF-8", \
 | |
|    "--add-opens", "java.base/java.lang=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.base/java.util=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.base/java.lang.reflect=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.base/java.text=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.desktop/java.beans=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.desktop/java.awt.font=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.base/sun.nio.ch=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.base/java.io=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.base/java.util=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.base/sun.nio.ch=ALL-UNNAMED", \
 | |
|    "--add-opens", "java.base/java.io=ALL-UNNAMED", \
 | |
|    "-Drunning.in.docker=true", \
 | |
|    "-jar", "webgoat.jar", "--server.address", "0.0.0.0" ]
 | |
| 
 | |
| HEALTHCHECK --interval=5s --timeout=3s \
 | |
|   CMD curl --fail http://localhost:8080/WebGoat/actuator/health || exit 1
 |