Web Applications are similar to one another in terms of structure and tooling.
Jenkins, GitLab & PHP work perfectly together and Jenkins is a great open source tool for CI process.
CI is the process of performing static code analyses and running tests for an application on a regular basis, often on a push to a repository. GitLab Runner will test codes with multiple docker containers which means code can be tested with different environments. It’s also possible to allow Jenkins to listen to incoming webhooks for triggering updates and generate a nice visual report for looking at the results. Jenkins monitors repository for changes and as soon as anything happens it will pull down the changes and perform all specified tasks.
DeployHub one of open source CI tool works with Jenkins. It allows developers to define the software deployment package and logic once, and then push it forward where it adapts to the next environment in the continuous delivery pipeline – even when environments are mixed. Automated software deployment driven by the continuous delivery pipeline is the ultimate goal of agile DevOps. And doing agentless deployment is the quickest way to get it done.