instruction: Create a Dockerfile for fundamentals
output: ```dockerfile
  from your Dockerfile file located in the current directory.
  NoteIn your multi-stage Dockerfile, the final stage (final) is the default target for building. This means that if you don't explicitly specify a target stage using the --target flag in the docker build command, Docker will automatically build the last stage by default. You could use docker build -t spring-helloworld-builder --target builder . to build only the builder stage with the JDK environment.Look at the image size difference by using the docker images command:
  
  $ docker images
  You'll get output similar to the following:
  
  spring-helloworld-builder latest c5c76cb815c0 24 minutes ago 428MB
  spring-helloworld latest ff708d5ee194 About an hour ago 880MB
  Your final image is just 428 MB, compared to the original build size of 880 MB.By optimizing each stage and only including what's necessary, you were able to significantly reduce the overall image size while still achieving the same functionality. This not only improves performance but also makes your Docker images more lightweight, more secure, and easier to manage.Additional resourcesMulti-stage buildsDockerfile best practicesBase imagesSpring Boot Docker
  Request changesTable of contentsExplanationTry it outCreate the DockerfileBuild the container imageRun the Spring Boot applicationUse multi-stage buildsAdditional resources
  
  Product offerings
  Pricing
  About us
  Contribute
  Read llms.txt
  Cookies Settings
  
  Status
  Legal```