Wir nutzen die Paketverwaltung Composer, um unser agentureigenes Tool a77 zu installieren. Dies dient uns zur Verwaltung von lokalen Docker Compose Projekten.
Es schaft eine Verbindung von lokalem Arbeiten zu unseren Git-Repositories auf unserem Server.
Der Vorteil ist eine standartisierte Arbeitsweise, die Änderungen der Projekte registriert und bei Bedarf etwaige Fehl-Commits zurücksetzen kann.
Composer registriert änderung an unserem Tool, do dass dieses zukünftig zentral aktualisiert werden kann und die Deploys einfach durch ein Update ausgeliefert werden.
Zuerst muss Composer auf dem lokalen System installiert werden. Ob Composer bereits vorhanden ist, kann über die Konsole geprüft werden:
composer --versionWenn eine Versionsnummer ausgegeben wird, ist Composer bereits installiert.
Falls Composer noch nicht installiert ist, kann er von der offiziellen Composer-Webseite heruntergeladen werden:
https://getcomposer.org/download/Unter Windows wird empfohlen, den Composer-Installer zu verwenden. Dieser richtet Composer automatisch ein und macht den Befehl composer in der Konsole verfügbar.
Unter Linux oder WSL kann Composer alternativ über die Konsole installiert werden. Wichtig ist, dass PHP bereits vorhanden ist, da Composer auf PHP basiert.
Nach der Installation sollte die Konsole neu geöffnet und erneut geprüft werden:
composer --version
Wird eine Version angezeigt, ist Composer einsatzbereit.
Damit Composer unser internes a77-Tool installieren kann, muss Composer wissen, aus welchem Repository das Paket geladen werden soll. Dazu wird das interne Repository als Paketquelle eingetragen.
Dies kann direkt im lokalen Projektordner erfolgen:
composer config repositories.a77 vcs git@ssh.gitlab.projekteverwaltung.de:client-platform/a77-cli.gitcomposer require agentur77/a77Wenn später eine neue Version des a77-Tools bereitgestellt wird, kann das lokale Tool über Composer aktualisiert werden:
composer update agentur77/a77Composer lädt dann die aktuelle Version aus dem Repository und aktualisiert die lokale Installation.
Damit Composer auf das interne Git-Repository zugreifen kann, muss der SSH-Zugriff auf den Git-Server eingerichtet sein. Der lokale SSH-Key muss also im GitLab hinterlegt sein.
Außerdem sollte darauf geachtet werden, dass composer.json und composer.lock im Projekt sauber versioniert werden. Die composer.json beschreibt, welche Pakete benötigt werden. Die composer.lock hält fest, welche konkreten Versionen installiert wurden. Dadurch arbeiten alle Entwickler mit denselben Paketständen.
Nach der Einrichtung steht das a77-Tool lokal zur Verfügung und kann für die Verwaltung der Docker-Compose-Projekte genutzt werden.