Byg en Drupal-installation på Amazon EC2

Her er en ferieopskrift på infrastrukturnerder som mig: hvordan man bygger en fungerende Drupal-installation på en EC2-maskine. Jeg bygger Drupal på min Amazon Basic Linux-mikroinstans og ikke de mere populære AMI-aromatiserede aromaer. Jeg vil skære direkte på handlingen her og derefter forklare, hvorfor jeg har gjort det på denne måde i et senere indlæg.

Nedenfor er de par dusin kommandoer, der kræves for at få Drupal til at gå i form af et snyderi. Jeg har medtaget meget få forklaringer på kommandoerne, config eller noget andet for at gøre det nemt at lære. Dette er alt CLI-voodoo, kun forstået af Linux-sysadmins og andre computernerder.

De tre nøgleingredienser er PHP, MySQL og Drupal. Det bør ikke følges af nogen, der ikke er villige til at bruge tid på at undersøge, hvad der i alverden foregår, og spilder tid på fejlfinding. Faktisk kunne en webudvikler bruge hele sin karriere på at lære disse ingredienser at kende.

Tiden der tages for at gennemføre er meget variabel. Hvis alt går glat, kan denne proces tage minutter. Hvis noget går galt, er der ingen ende på den tid, der kan suges op ved fejlfinding. Der er en enorm mængde, der kan gå galt her. Jeg har begået en enkel fejltagelse og spildt dage med at prøve at finde den. Computere er utilgivelige.

Installer PHP

Den første ting, der skal tilberedes, er en PHP-processor. Følg disse fire trin (jeg bruger ofte fire trin til at oprette en virksomhedsapplikation).

  1. Installere. Kommandoen er yum install php
  2. Konfigurer. Den mest almindelige ændring er at finjustere hukommelsesgrænsen.
  3. Løb. Webserveren har brug for en genstart for at hente det nye PHP-processormodul.
  4. Kontrollere. php -v
  5. Den næste ting at gøre er at krydre PHP med et udvalg af ekstraudstyr:

    yum installer php-mysql php-xml php-mcrypt php-mbstring php-gd

    Hver af disse pakker afhænger af andre pakker. Installation af php-mysql installerer også mysql-libs og php-pdo; php-xml afhænger af libxslt; og php-mcrypt har brug for libmcrypt og libtool-ltdl. Yum-pakkeinstallationssystemet sørger for, at alt dette fungerer automatisk.
  6. Jeg har brug for et par værktøjer til at hjælpe mig med at få endnu flere PHP-ekstramateriale: PEAR (PHP Extension and Application Repository), PECL (PHP Extension Community Library) og filer, der er nødvendige for at oprette PHP-udvidelser:

    yum installer php-pære

    yum installer php-devel
  7. Drupal kan virke lidt langsom. Jeg kan fremskynde det med APC (Alternativ PHP Cache): yum installer php-pecl-apc

Installer MySQL

  1. Installere. yum installer mysql-server
  2. Løb. /etc/init.d/mysqld start
  3. Konfigurer. mysqladmin -u root password 'Pa55word'
  4. Kontrollere. mysql -u rod -p

Installer en compiler

En kompilator bruges til at opbygge værktøjer fra kildekoden. Ikke hver ekstraudstyr er tilgængelig som en binær installationspakke i Amazons depot. Nogle gange er jeg nødt til at udarbejde kode.

Sikkerhedseksperter kan ikke lide smagen af ​​en compiler på en produktionsmaskine. De tillader ikke en compiler nær offentligheden på grund af en historie med misbrug: i de rigtige hænder kan det give fulde systemrettigheder.

 yum installer gcc 

Installer Drupal

Kopi

  1. wget http://ftp.drupal.org/files/projects/drupal-7.10.tar.gz
  2. gunzip drupal-7.10.tar.gz
  3. tjære xf drupal-7.10.tar
  4. mv drupal-7.10 / * / var / www / html /
  5. mv drupal-7.10 /.* / var / www / html /

Konfigurer

  1. cd / var / www / html / sites / default /
  2. cp default.settings.php settings.php
  3. chmod 666 settings.php
  4. vi settings.php (det er her, jeg fortæller Drupal, hvor databasen er)
  5. chmod 777.

Ryd op

  1. cd
  2. rm -rf drupal-7.10 /
  3. gzip drupal-7.10.tar

Opret en database og bruger

Dette er SQL-kommandoer, ikke shell-kommandoer.

  1. TILGANG brug ON *. * TIL IDENTIFICERET AF 'Pa55w0rd';
  2. Opret DATABASE drupal7db;
  3. TILVÆLG VÆLG, INDSÆT, OPDATERING, SLET, SKAB, DROP, INDEX, ALTER, LÅSBORD, OPRET TEMPORÆRE TABELLER PÅ `drupal7db '. * TIL' drupal7user '@' localhost 'IDENTIFIERET AF' Pa55w0rd ';

Det sidste stykke kommandolinjearbejde er en genstart af Apache HTTP-serveren.

  1. /etc/init.d/httpd stop
  2. /etc/init.d/httpd start

Den næste del involverer konfiguration af Drupal ved hjælp af en webbrowser.

Den sidste del af installationsprocessen finder sted på det nye Drupal websted, så det er tid til at stoppe med at bruge kommandolinjen og begynde at bruge en webbrowser. URL-adressen, der skal bruges, er på linjen "http://ec2-1-2-3-4.eu-west-1.compute.amazonaws.com/install.php". At indtaste denne URL i en webbrowser instruerer webserver til at køre et script kaldet "install.php". Dette script guider dig gennem de sidste trin.

Bemærk: Denne installations-URL er et eksempel og ikke en rigtig. DNS-navnet til din EC2-maskine vil bestemt ikke indeholde teksten "1-2-3-4", og det har muligvis heller ikke "eu-west-1". Hvis du kopierer dette eksempel-URL til en webbrowser, finder det ikke webstedet og viser en fejl på linjen "kan ikke finde ec2-1-2-3-4.eu-west-1.compute. amazonaws.com".

Test Drupal

Se den resulterende eksempel-startside på http://ec2-1-2-3-4.eu-west-1.compute.amazonaws.com/.

Afkøles og serveres

Jeg har bygget det. Nu skal redaktørerne tilføje indhold, og jeg er nødt til at vedligeholde det.

Systemadministration vil være løbende. For eksempel har mit Drupal-sted ikke meget hukommelse at lege med, så hvis webstedet bliver populært, skal det styres. Hvis kunder opfatter mit websted som langsomt, kan jeg fremskynde det ved at tilføje en cache, optimere databasen og klage til redaktører om deres sidestørrelser.

© Copyright 2021 | mobilegn.com