Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
chp_laravel-php [2020/02/14 15:49]
matthias [Onze PHP template toevoegen aan OpenShift en daarmee deployen]
chp_laravel-php [2020/02/20 10:52] (current)
matthias [Ik heb een PHP (Laravel) applicatie die ik wil uitrollen met OpenShift.]
Line 10: Line 10:
 Daarnaast gaan we er vanuit dat je een ssh-keypair hebt aangemaakt om een ''​git clone''​ te kunnen doen van de php code die in Git staat. Volg [[https://​help.github.com/​en/​github/​authenticating-to-github/​adding-a-new-ssh-key-to-your-github-account | deze handleiding]] op Github om een ssh-key toe te voegen aan je Git repository. Onder MacOS en Linux raden wij [[glossary:​ssh#​apple_osx_en_linux|ssh-keygen]] aan, voor windows raden wij het linux subsystem en/of openssh aan om alsnog ssh-keygen te kunnen gebruiken. Helaas worden passphrases op dit moment nog niet ondersteund. ​ Daarnaast gaan we er vanuit dat je een ssh-keypair hebt aangemaakt om een ''​git clone''​ te kunnen doen van de php code die in Git staat. Volg [[https://​help.github.com/​en/​github/​authenticating-to-github/​adding-a-new-ssh-key-to-your-github-account | deze handleiding]] op Github om een ssh-key toe te voegen aan je Git repository. Onder MacOS en Linux raden wij [[glossary:​ssh#​apple_osx_en_linux|ssh-keygen]] aan, voor windows raden wij het linux subsystem en/of openssh aan om alsnog ssh-keygen te kunnen gebruiken. Helaas worden passphrases op dit moment nog niet ondersteund. ​
 \\ \\
-Om wille van de veiligheid raden wij af om een bestaand ssh-keypair te hergebruiken die al voor andere doeleinden ​worden ​gebruikt.  +Om wille van de veiligheid raden wij af om een bestaand ssh-keypair te hergebruiken die al voor andere doeleinden ​wordt gebruikt.  
-==== Aanmaken van een MariaDB instantie ==== +\\ 
-Als je Laravel applicatie gebruik maakt van MySql/MariaDB (of een andere database) dan moeten we die eerst aanmaken. Als je bent ingelogd via de webinterface bij je project dan kun je kiezen voor "add to project"​. +Verschillende afhankelijkheden ​van/​voor ​laravel staan hier ook beschreven op de volgende pagina'​s:​ 
-__Kies niet voor de ephemeral variant__ ​ want met de ephemeral variant ben je de data(base) kwijt bij een herstart van de database instance. +    * [[chp:handleidingen:Mariadb_laravelEen Mariadb/​mysql instantie uitrollen ​en koppelen ​aan Laravel]] 
- +    * [[chp:​handleiding:​configmaps_en_laravel|Laravel configureren met Environment variabelen]] 
- +Optioneel: 
-{{::openshift_template_mariadb.png?​900|}} +    * [[chp:​handleiding:​redis_laravel|Een redis instance aanmaken binnen Openshift en koppelen met Laravel]] 
- +    * [[chp:​concepten:​cronjobs|Cronjobs instellen]] 
-Pas "​Memory Limit",​ "​Namespace",​ "​MariaDB Database Name" ​en "​Version of MariaDB Image" niet aan. +    * [[chp:​concepten:​jobs|Queue-workers instellen]]
- +
-^Parameter ^ betekenis/​laravel instelling ^ +
-|Database Service Name| '​host'​ => env '​DB_HOST'​ | +
-|MariaDB Connection Username | '​username' ​ => env '​DB_USERNAME'​ | +
-|MariaDB Connection Password | '​password' ​ => env '​DB_PASSWORD'​ | +
-|MariaDB Database Name | '​database' ​ => env '​DB_DATABASE'​ | +
- +
-Kies er vervolgens voor om de secret aan te maken. Wij raden aan om binnen laravel de database connectie in te stellen via environment variabelen. +
- +
-Kan ik de database van buitenaf benaderen? \\ +
-Nee! Je database direct naar de buitenwereld openzetten is een heel slecht idee. +
-Als je een lokale tool gebruikt om naar je database te beheren dan kun je via oc port-forward een veiligere manier verbinding maken (zie voorbeeld onderaan deze pagina bij "​veelgestelde vragen"​). +
  
 +Met het uitrollen van onze PHP template worden er een aantal "​resources"​ uitgerold binnen Openshift. Verdere uitleg van deze resources staat onder [[:chp]] onder het kopje ''​Resource Definities''​.
 ==== Onze PHP template toevoegen aan OpenShift en daarmee deployen ==== ==== Onze PHP template toevoegen aan OpenShift en daarmee deployen ====
  
Line 79: Line 67:
 | GIT_IDENTITY_KEY | De naam van het secret waar je SSH Key in staat voor Git (Default: git-secret). | | GIT_IDENTITY_KEY | De naam van het secret waar je SSH Key in staat voor Git (Default: git-secret). |
  
-=== Veelgestelde vragen: ===+==== Veelgestelde vragen: ​====
  
-  * hoe installeer en gebruik je composer?+=== hoe installeer en gebruik je composer? ​===
 Door een ''​deploy.sh''​ script toe te voegen aan je git-repository. Hoe dat moet staat [[chp:​handleiding:​nginx-phpfpm#​deploysh|hier]] beschreven. Door een ''​deploy.sh''​ script toe te voegen aan je git-repository. Hoe dat moet staat [[chp:​handleiding:​nginx-phpfpm#​deploysh|hier]] beschreven.
-  * Hoe log je in op je container om te zien wat er in draait?+=== Hoe log je in op je container om te zien wat er in draait? ​===
 Dat kan via de web-interface en de command-line. Ga via de webinterface naar "​applications>​pods. Dat kan via de web-interface en de command-line. Ga via de webinterface naar "​applications>​pods.
 {{:​pasted:​20200214-154631.png|}} {{:​pasted:​20200214-154631.png|}}
Line 96: Line 84:
 oc rsh <​naam-van-de-pod> ​ oc rsh <​naam-van-de-pod> ​
 </​code>​ </​code>​
-  * Hoe kun je met een (grafische) tool connecten met je mysql pod.  +=== Hoe kun je met een (grafische) tool connecten met je mysql pod.   ===
 Dit kan door lokaal adminer te draaien, bijboorbeeld via docker. Dit kan door lokaal adminer te draaien, bijboorbeeld via docker.
 <code bash>​docker run -p 8080:8080 adminer </​code>​ <code bash>​docker run -p 8080:8080 adminer </​code>​
  • chp_laravel-php.1581691762.txt.gz
  • Last modified: 2020/02/14 15:49
  • by matthias