Full implementation of "Update Webgoat Dockerfile to use entrypoints and commands #523" based on the pull request of Nicklaus McClendon
This commit is contained in:
		| @ -8,11 +8,11 @@ services: | |||||||
|       - WEBWOLF_PORT=9090 |       - WEBWOLF_PORT=9090 | ||||||
|     ports: |     ports: | ||||||
|       - "8080:8080" |       - "8080:8080" | ||||||
|  |       - "9001:9001" | ||||||
|     volumes: |     volumes: | ||||||
|       - .:/home/webgoat/.webgoat |       - .:/home/webgoat/.webgoat | ||||||
|     command: "java -Djava.security.egd=file:/dev/./urandom -jar /home/webgoat/webgoat.jar --server.port=8080 --server.address=0.0.0.0" |  | ||||||
|   webwolf: |   webwolf: | ||||||
|     image: webgoat/webwolf |     image: webgoat/webwolf | ||||||
|     ports: |     ports: | ||||||
|       - "9090:9090" |       - "9090:9090" | ||||||
|     command: bash -c "sleep 8 && java -Djava.security.egd=file:/dev/./urandom -jar /home/webwolf/webwolf.jar --server.port=9090 --server.address=0.0.0.0 --spring.datasource.url=jdbc:hsqldb:hsql://webgoat:9001/webgoat" |     command: --spring.datasource.url=jdbc:hsqldb:hsql://webgoat:9001/webgoat --server.address=0.0.0.0 | ||||||
							
								
								
									
										4
									
								
								scripts/build-all.sh
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							
							
						
						
									
										4
									
								
								scripts/build-all.sh
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							| @ -7,13 +7,13 @@ SUCCESS=$? | |||||||
| nc -zv 127.0.0.1 9090 2>/dev/null | nc -zv 127.0.0.1 9090 2>/dev/null | ||||||
| SUCCESS=${SUCCESS}$? | SUCCESS=${SUCCESS}$? | ||||||
|  |  | ||||||
| if [[ "${SUCCESS}" -eq 00 ]] ; then | if [[ "${SUCCESS}" -eq 0 ]] ; then | ||||||
|   echo "WebGoat and or WebWolf are still running, please stop them first otherwise unit tests might fail!" |   echo "WebGoat and or WebWolf are still running, please stop them first otherwise unit tests might fail!" | ||||||
|   exit 127 |   exit 127 | ||||||
| fi | fi | ||||||
|  |  | ||||||
|  |  | ||||||
| mvn clean install | sh mvnw clean install | ||||||
| if [[ "$?" -ne 0 ]] ; then | if [[ "$?" -ne 0 ]] ; then | ||||||
|   exit y$? |   exit y$? | ||||||
| fi | fi | ||||||
|  | |||||||
| @ -11,3 +11,6 @@ RUN cd /home/webgoat/; mkdir -p .webgoat-${webgoat_version} | |||||||
| COPY target/webgoat-server-${webgoat_version}.jar /home/webgoat/webgoat.jar | COPY target/webgoat-server-${webgoat_version}.jar /home/webgoat/webgoat.jar | ||||||
|  |  | ||||||
| EXPOSE 8080 | EXPOSE 8080 | ||||||
|  |  | ||||||
|  | ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/home/webgoat/webgoat.jar"] | ||||||
|  | CMD ["--server.port=8080", "--server.address=0.0.0.0"] | ||||||
| @ -8,5 +8,9 @@ RUN \ | |||||||
|  |  | ||||||
| USER webwolf | USER webwolf | ||||||
| COPY target/webwolf-${webwolf_version}.jar /home/webwolf/webwolf.jar | COPY target/webwolf-${webwolf_version}.jar /home/webwolf/webwolf.jar | ||||||
|  | COPY start-webwolf.sh /home/webwolf | ||||||
|  |  | ||||||
| EXPOSE 9090 | EXPOSE 9090 | ||||||
|  |  | ||||||
|  | ENTRYPOINT ["/home/webwolf/start-webwolf.sh"] | ||||||
|  | CMD ["--server.port=9090", "--server.address=0.0.0.0"] | ||||||
							
								
								
									
										7
									
								
								webwolf/start-webwolf.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										7
									
								
								webwolf/start-webwolf.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,7 @@ | |||||||
|  | #!/bin/bash | ||||||
|  |  | ||||||
|  | # Script to start WebWolf, it needs a valid database connection from WebGoat so we wait 8 seconds before starting | ||||||
|  | # WebWolf application | ||||||
|  |  | ||||||
|  | echo " Waiting for database to be available..." | ||||||
|  | sleep 8 && java -Djava.security.egd=file:/dev/./urandom -jar /home/webwolf/webwolf.jar $@ | ||||||
		Reference in New Issue
	
	Block a user