Bird
Raised Fist0
Jenkinsdevops~10 mins

Jenkins WAR file execution - Step-by-Step Execution

Choose your learning style10 modes available
Process Flow - Jenkins WAR file execution
Download jenkins.war
↓
Open terminal/command prompt
↓
Run: java -jar jenkins.war
↓
Jenkins server starts
↓
Access Jenkins via browser at localhost:8080
↓
Unlock Jenkins with initial admin password
↓
Configure Jenkins and start using
This flow shows how to start Jenkins by running the WAR file with Java, then access and unlock Jenkins in the browser.
Execution Sample
Jenkins
java -jar jenkins.war
Starts the Jenkins server by running the WAR file with Java.
Process Table
StepActionCommand/OutputSystem State
1Download Jenkins WAR filejenkins.war downloadedWAR file ready on disk
2Open terminalTerminal readyReady to run commands
3Run Jenkins WARjava -jar jenkins.warJenkins server starting...
4Jenkins server startup logsLoading plugins... Jenkins is fully up and runningJenkins server running on port 8080
5Open browserNavigate to http://localhost:8080Browser connected to Jenkins server
6Unlock JenkinsEnter initial admin password from fileJenkins unlocked, ready for setup
7Configure JenkinsSetup wizard runsJenkins configured and ready to use
💡 Jenkins server is running and accessible via browser after setup
Status Tracker
VariableStartAfter Step 3After Step 4After Step 6Final
jenkins.warNot downloadedDownloadedDownloadedDownloadedDownloaded
Jenkins ServerStoppedStartingRunningRunningRunning
Browser AccessNoNoNoYes (locked)Yes (unlocked)
Admin PasswordNot retrievedNot retrievedNot retrievedRetrieved and enteredEntered
Key Moments - 3 Insights
Why do we use 'java -jar jenkins.war' to start Jenkins?
Because Jenkins is packaged as a WAR file that runs on a Java server, so the command tells Java to run that WAR file as a web application. See execution_table step 3.
What does 'Unlock Jenkins' mean and why is it needed?
Unlocking Jenkins means entering the initial admin password to secure the server before setup. This happens after Jenkins starts (step 6) to prevent unauthorized access.
Why do we access Jenkins at http://localhost:8080 after starting the WAR file?
Because Jenkins runs a web server on port 8080 by default, so the browser connects to that address to interact with Jenkins. See execution_table step 5.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution table, what is the system state after step 4?
AJenkins WAR file is still downloading
BJenkins server is running on port 8080
CBrowser has connected to Jenkins
DJenkins is locked and not running
💡 Hint
Check the 'System State' column for step 4 in the execution_table
At which step do we enter the initial admin password to unlock Jenkins?
AStep 6
BStep 5
CStep 3
DStep 7
💡 Hint
Look for 'Unlock Jenkins' action in the execution_table
If we change the port Jenkins runs on, which step's system state would change?
AStep 1
BStep 6
CStep 4
DStep 7
💡 Hint
The port is part of the Jenkins server running state shown in step 4
Concept Snapshot
Jenkins WAR file execution:
- Download jenkins.war file
- Run with: java -jar jenkins.war
- Jenkins starts on port 8080
- Access via browser at http://localhost:8080
- Unlock with initial admin password
- Configure Jenkins and start using
Full Transcript
To run Jenkins from the WAR file, first download the jenkins.war file. Then open your terminal or command prompt. Run the command 'java -jar jenkins.war' to start the Jenkins server. The server will start and listen on port 8080 by default. Open your web browser and go to http://localhost:8080. Jenkins will ask you to unlock it by entering the initial admin password found in a file on your system. After unlocking, you can configure Jenkins using the setup wizard and start using it.

Practice

(1/5)
1. What does running java -jar jenkins.war do in Jenkins?
easy
A. Deletes Jenkins configuration files
B. Installs Jenkins permanently on the system
C. Updates Jenkins to the latest version
D. Starts Jenkins server without installing it

Solution

  1. Step 1: Understand the command purpose

    The command java -jar jenkins.war runs the Jenkins server directly from the WAR file without installation.
  2. Step 2: Differentiate from installation

    This method does not install Jenkins permanently but starts it temporarily for use or testing.
  3. Final Answer:

    Starts Jenkins server without installing it -> Option D
  4. Quick Check:

    Run WAR file = Start Jenkins temporarily [OK]
Hint: WAR file runs Jenkins without install, just start it [OK]
Common Mistakes:
  • Thinking it installs Jenkins permanently
  • Confusing it with Jenkins update command
  • Assuming it deletes files
2. Which command correctly starts Jenkins on port 9090 using the WAR file?
easy
A. java -jar jenkins.war --httpPort=9090
B. java -jar jenkins.war -p 9090
C. java -jar jenkins.war --port 9090
D. java -jar jenkins.war -httpPort 9090

Solution

  1. Step 1: Recall Jenkins WAR port option syntax

    The correct option to specify port is --httpPort=9090 when running the WAR file.
  2. Step 2: Check other options for correctness

    Options B, C, and D use incorrect flags or syntax not recognized by Jenkins WAR execution.
  3. Final Answer:

    java -jar jenkins.war --httpPort=9090 -> Option A
  4. Quick Check:

    Use --httpPort=number to set port [OK]
Hint: Use --httpPort=PORT to set Jenkins port [OK]
Common Mistakes:
  • Using -p or --port which Jenkins WAR does not recognize
  • Missing equal sign in option
  • Using single dash for long option
3. What will be the output if you run java -jar jenkins.war --httpPort=8080 when port 8080 is already in use?
medium
A. Error: Address already in use, Jenkins fails to start
B. Jenkins automatically switches to port 8081
C. Jenkins starts successfully on port 8080
D. Jenkins ignores the port option and uses default

Solution

  1. Step 1: Understand port conflict behavior

    If the specified port (8080) is busy, Jenkins cannot bind to it and will fail to start with an error.
  2. Step 2: Check Jenkins automatic port fallback

    Jenkins WAR does not automatically switch ports; it requires manual change if port is busy.
  3. Final Answer:

    Error: Address already in use, Jenkins fails to start -> Option A
  4. Quick Check:

    Port busy = Jenkins start error [OK]
Hint: Busy port causes Jenkins start error, no auto-switch [OK]
Common Mistakes:
  • Assuming Jenkins auto-switches ports
  • Thinking Jenkins ignores port option
  • Believing Jenkins starts anyway on busy port
4. You ran java -jar jenkins.war --httpPort=abc and Jenkins did not start. What is the likely cause?
medium
A. Jenkins requires root privileges to start
B. Jenkins WAR file is corrupted
C. Invalid port number format causes startup failure
D. Java is not installed on the system

Solution

  1. Step 1: Analyze the port option value

    The port option --httpPort=abc uses non-numeric characters, which is invalid for a port number.
  2. Step 2: Understand Jenkins port validation

    Jenkins expects a numeric port; invalid format causes startup failure with error.
  3. Final Answer:

    Invalid port number format causes startup failure -> Option C
  4. Quick Check:

    Port must be numeric for Jenkins to start [OK]
Hint: Port must be a number, not letters [OK]
Common Mistakes:
  • Blaming Jenkins WAR file corruption
  • Assuming Java is missing without checking
  • Thinking root privileges are always needed
5. You want to run Jenkins WAR file on port 7070 and also specify a custom Jenkins home directory at /data/jenkins_home. Which command is correct?
hard
A. java -jar jenkins.war --httpPort=7070 --jenkinsHome=/data/jenkins_home
B. java -Djenkins.home=/data/jenkins_home -jar jenkins.war --httpPort=7070
C. java -jar jenkins.war --httpPort=7070 --jenkins.home=/data/jenkins_home
D. java -jar jenkins.war --httpPort=7070 -DjenkinsHome=/data/jenkins_home

Solution

  1. Step 1: Set port option correctly

    The port is set with --httpPort=7070, which is correct syntax.
  2. Step 2: Set Jenkins home directory properly

    Jenkins home is set via Java system property -Djenkins.home=path, not as a command option.
  3. Step 3: Verify option correctness

    The correct command places the -Djenkins.home= option before -jar to set the system property properly.
  4. Final Answer:

    java -Djenkins.home=/data/jenkins_home -jar jenkins.war --httpPort=7070 -> Option B
  5. Quick Check:

    Use -Djenkins.home=PATH for custom Jenkins home [OK]
Hint: Use -Djenkins.home=PATH to set Jenkins home [OK]
Common Mistakes:
  • Using --jenkinsHome or --jenkins.home as options
  • Confusing Java system properties with command options
  • Missing -D prefix for system properties
  • Placing -D option after -jar which is incorrect
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard