Drupal Deployment demo

of 51 /51

Embed Size (px)

Transcript of Drupal Deployment demo

PowerPoint Presentation

CREATINGVALUE,TIME& FREEDOM

Een Drupal website deployenContentHosting / ServerManagement toolsDomeinnaam

ContentJullie hebben tijdens de vorige sessies geleerd hoe je een site kan aanmaken en beheren op jullie lokale computer, en nu is je site klaar om op het web gegooid te worden.

Wat nu???

Een webserver aanmakenRegistreer je bij een VPS-providerMaak een Ubuntu server 14.04 LTS aanConfigureer de server via sshUpload de bestanden van jouw siteUpload de database van jouw site en importeer deze op de mysql-instantie van de server

Een VPS provider kiezenVoor deze tutorial gebruik ik een Amazon AWS micro instanceJe kan ook zelf op zoek gaan naar een andere provider

Amazon Ubuntu 14.04 PV 64 bit

Kies de Micro instance

Pas de securitygroup aan om ssh en http toe te laten

Security group settings infossh om de server te configureren via een terminal en om bestanden te kunnen uploaden met FileZillahttp om de webpagina's bereikbaar te maken

Amazon Keys

De server is nu aan het opstartenNoteer alvast het publiek ip-adres

Management toolsNu hebben we een server klaarstaan en installeren we de tools die nodig zijn om hem te configureren en beheren vanop je eigen computer.SSH clientFTP client

SSH clientMet de SSH-client kunnen we inloggen op de server in een zgn terminalHiermee gaan we de server configureren om als webserver te gaan werkenVoor Windows PuttyVoor Linux en OSX Ingebouwde Terminal applicatieAmazon connect info

PuttyGa naar De downloadpagina van PuttyDownload en installeer de full installerStart PuttyGenZet de .pem sleutel om in een .ppk om te kunnen gebruiken in PuttyPuttyGen

PuttyGenOpen de .pem key

Sleutel opslaan

Start Putty en voeg de key toe

Vul [email protected] in en sla op

Test de verbinding

SSH op Linux en OsxStart een TerminalNavigeer naar de map waar de key opgeslagen is, bvb : cd /home/users/jan/Downloads/Voer volgend commando uit (pas de key en hostnaam aan voor jouw setup)ssh -i jouwsleutel.pem [email protected] toegang klaarzettenVoer in de terminal volgend commando uit:sudo usermod -aG www-data jouwuserDit zorgt er voor dat we straks onze bestanden kunnen kopiren zonder permission denied errorsFilezilla FTP clientOp je eigen computer installeren we nu FileZillaWindows, Linux en Osx versies beschikbaar

Configuratie FileZilla

Test de verbindingSftp://ip-addressPoort op 22 zetten

Links = lokaalRechts = server

Server configuratieNu we onze tools hebben klaarstaan kunnen we de server beginnen configureren.Eerst installeren we een zgn Lamp-stackLinux de os-architectuurApache de eigenlijke webserversoftwareMysql de databasePhp de engine waarop Drupal draaitIn de ssh-terminalsudo tasksel

Tasksel LAMP installatieNavigeer met de pijltjes naar LAMP serverDruk op spatie om te selecterenDruk op tab om naar het ok veld te gaanDruk op enter om te bevestigenTijdend de installatie zal er om een paswoord voor de mysql root-user gevraagd worden. Kies zelf een paswoord en noteer dit ergens veilig. Zonder dit paswoord kunnen we de site niet opzettenSit back & relax terwijl alles genstalleerd wordtNu is het tijd om phpmyadmin te installeren op de serverSudo apt-get install phpmyadminGebruik de gegevens van de mysql-installatie als er om mysql credentials wordt gevraagd

Phpmyadmin testenGa in je browser naarHttp://ip-address server/phpmyadminLog in met de username en paswoord dat je tijdens de installatie ingafSite op de server zettenNu staat alles klaar om je site te gaan overzetten naar de server en de server te configurerenDatabase kopiren van je lokale installatie naar de serverphpmyadminDe bestanden van de site naar de server kopirenFilezillaApache configureren om jouw site te kunnen hostenPutty / sshExporteer de database van je siteGa in de browser de phpmyadmin van je lokale installatiehttp://localhost:8083/phpmyadmin/Selecteer de database van je siteSelecteer custom exportZet compression aan en selecteer zipDruk onderaan op de go knopPhpmyadmin export opties

Maak de database aan op de server en importeer de gegevensGa in je browser naarHttp://ip-address server/phpmyadminLog in met de username en paswoord dat je tijdens de installatie ingafMaak een database met identieke naam als die van jouw lokale databaseImporteer de gedownloade databaseMaak de database aan op de server

Importeer de database die je van je localhost haalde

Kopier de bestanden van je Drupal site naar de serverStart FileZilla en verbind met de serverSleep de map waar je Drupal-site in zit naar de map /var/www op de serverDit kan even durenControleer of er geen gefaalde overdrachten zijn. Indien dit het geval is kan je deze bestanden selecteren en opnieuw uploaden.Kopier de bestanden van je Drupal site naar de server

Configuratie ApacheNu staan alle bestanden klaar en moeten we Apache instellen om deze site actief te maken.Hiervoor openen we een ssh-verbindingWindows: PuttyLinux/Osx: TerminalConfiguratie ApacheVhost voor jouw siteVoer de volgende commando's uit in de terminalCd /etc/apache2/sites-availableSudo nano jouwsite.confNano is een text editor, kopieer het onderstaande in het venster, pas aan waar nodig en druk ctrl+x, y en enter om op te slaan

Hiermee maak je een zgn vhost aan. Dit is een mechanisme van apache om makkelijk meerdere sites op n server te hebben en per site de configuratie aan the passen waar nodig.

Vhost voorbeeld

Configuratie ApacheVoer volgende commando's uit in de terminal:sudo a2enmod rewritesudo a2dissite 000-defaultsudo a2ensite jouwsiteHiermee activeren we de rewrite-module, zetten we de default site af en activeren we jouw site.Nu rest ons enkel nog de config.php van je site aan te passen, de versie die Aqcuia meegeeft zal niet werken op deze serverConfiguratie ApacheVoer volgende commando's uit in de terminal:sudo rm /var/www/jouwsite/sites/default/settings.phpsudo nano /var/www/jouwsite/sites/default/settings.phpCheck of de database settings ok zijn ik moest ze aanpassen

Configuratie ApacheWe zijn er bijna, we moeten enkel nog wat permissies goed zetten en apache herstarten ;-)In een ssh-terminal:sudo chown -R www-data:www-data /var/www/jouwsitesudo chmod -R 775 /var/www/jouwsite/sites/defaultsudo chmod 444 /var/www/jouwsite/sites/default/settings.phpsudo chmod 444 /var/www/jouwsite/sites/default/default.settings.phpsudo service apache2 restartBrowse naar je siteAls alles goed is zou jouw site nu zichtbaar moeten zijn op het ip-adres van jouw server

caveatsTelkens je bestanden hebt geupload via FileZilla moet je ze de juiste owner en permissies geven. Meestal zal dit in de files-folder van jouw site gebeuren. Het snelst is de hele folder opnieuw aan te passen:sudo chmod -R 775 /var/www/jouwsite/default/filesDomeinnaam koppelen aan je siteOm je site makkelijk op naam ipv op ip-adres bereikbaar te maken kan je een domeinnaam regstreren en het ip-adres van je server hieraan koppelen.Prijzen hiervan lopen uiteen bij verschillende aanbieders, maar de procedure is dezelfde:Je koopt een domeinnaam voor een periode (vb 1 jaar)Je logt in op het controlepaneel van de DNS-serviceJe maakt en A-record aan dat naar het ip van je server verwijst.SlotHeb je nog vragen die niet aan bod kwamen, of is er nog iets niet duidelijk?Vroeg of laat zal je ergens een probleem hebbenBvb bij de voorbereiding wou phpmyadmin niet meewerkenDe volgende sites zijn zeer goede hulpbronnen http://askubuntu.com/http://stackoverflow.com/http://superuser.com/http://drupal.stackexchange.com/https://drupal.org/support

CREATINGVALUE,TIME& FREEDOM