/cd-ws-infa

ci/cd workshop docker-compose project

Primary LanguageDockerfileMIT LicenseMIT

Docker Compose Project for a simple CI/CD Infrastructure

Includes:

  • CI/CD server (jenkins)

  • Git repository manager (to manage git repositories, using gogs)

  • artefact nexus (Sonatype Nexus to store and manage artefacts: jar, npm, …​)

  • docker registry (to store and manage docker images)

  • database (postgress)

  • edge router/reverse proxy ()

Roadmap

Plan per 2020-12-29 is to reactivate project, because CI/CD is not done in the world. :)

  • ❏ upgrade infrastructure

    • ❏ replace jwilder/nginx-proxy with traefi.io

      • better documentation,

      • active development

    • ❏ upgrade jenkins

    • ❏ upgrade gogs

    • ❏ upgrade postgress

    • ❏ upgrade nexus

    • ❏ upgrade docker registry

Wenn man alles von Anfang an machen will:

  • stoppe und entferne alle Container

    • docker-compose stop && docker-compose rm -f

  • entferne alle volumes aus dem projekt

    • docker volume rm $(docker volume ls -q)

    • docker volume rm $(docker volume ls -q | grep devwsinfra)

  • baue alles neu

    • docker-compose build --force-rm --no-cache --pull

  • entferne db/docker-entrypoint-initdb.d/01-init-gogs-db.sh die db-dump instruktion und nehme die normalen statements

  • in db/Dockerfile kommentiere das kopieren des db-dump files aus

  • starte container

    • docker-compose up -d

  • nehme alle Konfigurationen in den Applikationen vor (z.B. http://git.nautsch.net fuer gogs)

  • mache ein backup der db welches die db-dump Datei erzeugt

  • baue db-dump wieder in

    • db/docker-entrypoint-initdb.d/01-init-gogs-db.sh

    • db/Dockerfile ein