This two-week project represents a culmination of the concepts and tools that we have been working with throughout the semester. Your task is to implement, document, and demonstrate a workflow /...

1 answer below »
See Word doc for instructions


This two-week project represents a culmination of the concepts and tools that we have been working with throughout the semester. Your task is to implement, document, and demonstrate a workflow / pipeline that includes at minimum the following practices:  · Code development (IntelliJ) ALREADY COMPLETED · Distributed version control (GitHub) ALREADY COMPLETED · Unit testing (JUnit) ALREADY COMPLETED · Build automation (Maven) ALREADY COMPLETED · Continuous integration / continuous delivery (Jenkins) NEEDS TO BE COMPLETED – Please take DETAIL screenshots demonstrating the steps you take to do the Jenkins integration as I would have to do a presentation on this. · Container / virtual machine export (Docker) NEEDS TO BE COMPLETED I began doing this Docker integration within IntelliJ (it has to be done through IntelliJ), but I couldn’t figure out how to setup the Dockerfile so everything will execute correctly. This whole project should be executable via a Docker Container -- Please take DETAIL screenshots demonstrating the steps you take to do the Dockers integration as I would have to do a presentation on this as well. I'm using the following versions: · Maven= Apache Maven 3.8.6 · Java = Java 17.0.4.1 · IntelliJ = IntelliJ IDEA 2022.2.3 (Ultimate Edition) Runtime version: 17.0.4+7-b469.53 amd64 · Jenkins = Jenkins 2.361.1 · Docker Engine = 20.10.17 · Docker Desktop = 4.12.0 ***Please ensure all is being done in indicated versions, since not doing so has created problems in the past ***
Answered 3 days AfterOct 25, 2022

Answer To: This two-week project represents a culmination of the concepts and tools that we have been working...

Mehak answered on Oct 28 2022
46 Votes
How to create a docker file?
Docker file for your project
Below are some of the basic instructions that are used in dock
erfile.
FROM: Tells the Docker to use the mentioned image as the base image. This image will be pulled from the docker hub.
AS: Is used to give an alias to imported images.
COPY: Copies files/directory from source to destination path.
RUN: Runs any UNIX command in the container’s terminal/command prompt.
CMD: Provides the facility to run UNIX commands to start the container. This can be overridden upon executing the docker run command.
ENV: Sets environment variables in the container’s path.
#: Is used to put a comment in the dockerfile.
This is the dockerfile that we will use for our application:
FROM maven:3.5.4-jdk-8-alpine as maven
COPY ./pom.xml ./pom.xml
COPY ./src ./src
RUN mvn dependency:go-offline -B
RUN mvn package
FROM openjdk:8u171-jre-alpine
WORKDIR /adevguide
COPY --from=maven target/SimpleJavaProject-*.jar ./SimpleJavaProject.jar
CMD ["java", "-jar", "./SimpleJavaProject.jar"]
Let’s discuss the significance of each line.
FROM maven:3.5.4-jdk-8-alpine as maven
Pull maven:3.5.4-jdk-8-alpine image from the docker hub and refer it as maven. This image...
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here