PHP Projekt Deployment

April 15, 2016

Auf Projektserver

  • ssh-key erstellen für pull
    • ssh-keygen -t rsa -b 4096 -C "user@domain.com"
  • pubkey von deploy server dem user der den deploy anstöst zuordnen
  • verzeichnisse anlegen
  • vhost

auf deploy server

  • gitlab install
  • gitlab-ci install
  • lets encrypt zertifikate erstellen
  • letsencrypt cron
    • 0 4 * /root/letsencrypt/letsencrypt-auto renew 2>&1
  • sshkey für user gitlab-runner erzeugen
    • su gitlab-runner
    • ssh-keygen -t rsa -b 4096 -C "gitlab-runner@domain.com"
  • composer global
    • curl -sS https://getcomposer.org/installer | php
    • sudo mv composer.phar /usr/local/bin/composer
    • Packages
    • su gitlab-runner
    • cd ~
    • composer global require phpunit/phpunit
    • composer global require deployer/deployer

Für jedes Projekt

runner anlegen für jedes repo

  • gitlab-ci-multi-runner register

    • url und token aus "projekt / settings" holen
  • Pubkey des Projektservers in Gitlab als Deploy Key hinterlegen
    • danach einmal ein git clone oder so, damit man den host-key verifiziert

in repo

  • .gitlab-ci.yml anlegen