Use this file to discover all available pages before exploring further.
This guide covers the most common issues encountered when running the CI/CD stack. Start with the Quick Diagnostics commands below to gather information, then find your specific issue in the relevant section. If nothing here resolves your problem, see the Complete Reset section at the bottom.
docker compose downdocker volume rm cicd_jenkins_homedocker compose up -d
Plugins not installing
Symptoms: Plugins listed in the init script are missing, or Jenkins shows plugin installation errors.1. Wait for full initialization — Jenkins can take 2–3 minutes on first boot.2. Check plugin installation logs:
Symptom: Jenkins shows the initial setup wizard on first access.Solution: Ensure the JAVA_OPTS environment variable is set correctly in docker-compose.yml:
Symptoms: Build fails with “connection refused”, or pipelines can’t reach http://sonarqube:9000 / http://nexus:8081.1. Verify all services share the same Docker network:
docker network inspect cicd-network
2. Test connectivity from inside the Jenkins container:
3. Wait for dependent services — SonarQube in particular can take 2–3 minutes to become ready after startup.
Pipeline fails or behaves unexpectedly
1. Inspect recent Jenkins logs:
docker logs jenkins --tail 200
2. Replay the pipeline with additional debug output — in the Jenkins UI, open the build, then click Replay and add env or echo statements to isolate the failure.3. Verify pipeline parameters — confirm that ENVIRONMENT, TARGET_SERVER, and other parameters match expected values (see the Pipeline Parameters table).
Symptom: Default credentials (admin / admin) are rejected.SonarQube requires a password change on first login. Log in with admin / admin — you will be immediately prompted to set a new password. After changing it, update the sonarqube-token credential in Jenkins (Manage Jenkins → Credentials).
SonarQube analysis fails
Symptoms: Maven fails on the sonar:sonar goal, or the Quality Gate stage fails in Jenkins.1. Confirm the token credential exists in Jenkins:
Symptom:docker exec nexus cat /nexus-data/admin.password returns “no such file”.1. Wait for full initialization — Nexus can take 5–10 minutes on first boot.2. Check whether the file exists:
docker exec nexus ls -la /nexus-data/admin.password
3. If the file is gone, Nexus has already started and the password was consumed. Check the logs:
docker compose logs nexus | grep -i password
4. Try the default fallback password:admin123
Maven deploy fails with 401 Unauthorized
Symptoms:mvn deploy fails with HTTP 401, artifacts cannot be uploaded.1. Verify credentials in settings.xml:
Verify that datasource environment variables are set correctly. WildFly and JBoss both read connection details from environment variables defined in docker-compose.yml. Check the running configuration with:
docker inspect wildfly | grep -A 20 Env
Ensure the values match the credentials and host/port of your database service.
The pipeline rejects hardcoded credentials. Find the offending line in the scan output, then replace any hardcoded value with an environment variable lookup:
// Before (fails security scan)String password = "myPassword123";// After (passes security scan)String password = System.getenv("DB_PASSWORD");
If all else fails, perform a full teardown and re-initialise the stack from scratch:
docker compose down -vdocker volume prune -f./setup.sh
This destroys all persistent data including Jenkins job history, SonarQube projects, and Nexus artifacts. Back up first with ./backup-restore.sh backup.