================== Jenkins-setup ================== Introduction ------------- Jenkins is an open-source CI/CD tool that is used in various software engineering projects including my own. It's purpose is to pull the latest changes committed to a Git-project, and then use a configuration to build Execution ---------- To set this up I created a new virtual machine with the following specs: +----------+-------------------------------+---------------+ | RAM: 4GB | CPU: 1 core (3700x AMD Ryzen) | Storage: 40GB | +----------+-------------------------------+---------------+ .. image:: https://i.imgur.com/THE9dUE.png It is reached via: ``10.0.0.34:22`` And I manage it via `MobaXTerm `__ SSH manager This server runs on my own infrastructure. First I had to install a clean Ubuntu VM, I chose 20.04 LTS as the stable solution. After installation:: apt install docker.io And then once that was finished installing, the command to install portainer and have it be served:: sudo docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce Setup the dashboard via ``https://10.0.0.34:9443/#!/auth`` (only reachable when in my network, this will not work from the outside.) .. image:: https://i.imgur.com/YiDrrzO.png Then I added my first docker container; the Nginx reverse Proxy Manager (and this is how you're able to view se6.oksolution.nl publicly & securely.)