OpenShift este un program PaaS care vă permite să rulați gratuit propria aplicație cu resurse mici. Acesta oferă spațiu de stocare de 1 GB și memorie RAM de 512 MB și are suport pentru domenii personalizate. Este mai rapid decât Heroku, PagodaBox și AppFog, oferindu-vă acces SSH la serverul de aplicații, care rulează într-un mediu separat. Este la fel ca un server real, dar îl obțineți gratuit.
OpenShift este o platformă foarte bună pentru rularea unui site WordPress. PagodaBox și AppFog Fair pentru găzduirea gratuită a aplicațiilor PHP; cu toate acestea, PagodaBox este destul de lent și are o limită de 10MB de MySQL pentru un plan gratuit. AppFog nu mai acceptă un domeniu personalizat în planul lor gratuit. Puteți rula, de asemenea, PHP pe Heroku, dar este puțin pe lent, de asemenea.
OpenShift rezolvă toate problemele de mai sus: este destul de rapid, oferă un domeniu personalizat gratuit, oferă spațiu pe disc mare și o cantitate semnificativă de spațiu de stocare MySQL.
Planul gratuit acceptă:
OpenShift este o platformă de aplicații cloud de generație următoare, care facilitează dezvoltarea, implementarea și scalarea aplicațiilor în cloud - publice sau private.
Să-l rupem.
git push
la depozitul pe care OpenShift la creat pentru dvs..Aplicația dvs., spre punctul de vedere OpenShift, conține:
Depozitarul Git este creat și întreținut și de OpenShift. Trebuie să vă împingeți pentru a declanșa implementarea.
Aplicația dvs. rulează pe un set de cartușe. Un cartuș,prin definiția OpenShift, sunt bucăți autonome ale stivei de aplicații, cum ar fi serverul web și serverul de baze de date. aceste cartușesunt desfășurate și executate pe unul sau mai multe containere sigure.
Deci, pentru o aplicație PHP, puteți avea un server MySQL, un server web, un server Memcache, un server de logare și un operator Gearman. Toate acestea sunt cartușe. Gears sunt ceea ce vor rula aceste cartușe. Vă puteți gândi la un echipament ca un server virtual separat, iar cartușul este stiva de tehnologie; Prin urmare, pentru a scala aplicația dvs., puteți adăuga mai multe unelte în ea.
Pentru a vă extinde stiva de tehnologie, adăugați mai multe cartușe, cum ar fi adăugarea unui RabbitMQ.Gears comunica informații de configurare cu aplicația dvs. prin intermediul variabilelor de mediu. De exemplu, nu veți scrie direct un nume de utilizator MySQL sau o parolă MySQL într-un fișier de configurare. În schimb, ați folosi getenv pentru a încărca variabilele de mediu. Dacă codificați greu configurația, atunci când implementați pe unelte noi, aceasta nu mai funcționează.
define ('DB_NAME', getenv ('OPENSHIFT_APP_NAME'));
/ ** numele de utilizator al bazei de date MySQL * /
define ('DB_USER', getenv ('OPENSHIFT_MYSQL_DB_USERNAME'));
/ ** Parola bazei de date MySQL * /
define ('DB_PASSWORD', getenv ('OPENSHIFT_MYSQL_DB_PASSWORD'));
/ ** Numele gazdei MySQL * /
define ('DB_HOST', getenv ('OPENSHIFT_MYSQL_DB_HOST')). ':'. getenv ('OPENSHIFT_MYSQL_DB_PORT'));
Partajarea configurației prin intermediul mediului este modul în care mai multe unelte pot cunoaște reciproc informațiile. Dacă sunteți convins, să continuăm.
Mergeți aici și înscrieți-vă pentru un cont. Trebuie doar să vă înscrieți pentru un cont gratuit. Sari peste dacă ai deja un cont acolo.
Veți avea nevoie de o cheie publică pentru conexiunea dintre dvs. și OpenShift mai târziu. O cheie publică este un fișier text simplu, de obicei nume id_rsa.pub
care se află în ~ / .Ssh /
.
Deci, dacă sunteți pe un Mac, este înăuntru /Users/[your_username]/.ssh/id_rsa.pub
sau dacă sunteți pe Linux este în /home/[your_user_name]/.ssh/id_rsa.pub
. Trebuie să copiați conținutul acestui fișier și să îl actualizați cu OpenShift, astfel încât OpenShift să fie conștient de cheia publică. Atunci când faceți o conexiune la OpenShift din terminal (adică, atunci când SSH-ul dvs. și codul de presă), OpenShift vă va identifica și autoriza pe baza cheii dvs. publice / private.
Dacă nu sunteți familiarizat cu conceptul de cheie publică, acest tutorial vă va oferi un fundal solid pentru el.
Pentru a verifica dacă ați avut o cheie publică înainte, executați această comandă:
ls-la / .ssh | grep id_rsa.pub
Dacă obțineți acest rezultat:
id_rsa.pub
atunci aveți deja o cheie publică. Dacă comanda de mai sus nu întoarce nimic, atunci nu aveți una.
Să-l generăm cu comanda:
$ ssh-keygen -t rsaPuteți folosi opțiunea implicită când vă întreabă. După ce ați terminat, puteți confirma că aveți fișierul respectiv rulând
ls-la / .ssh | grep id_rsa.pub
din nou. Un fișier de chei private conforme se generează de asemenea sub nume ~ / .Ssh / id_rsa
(nu extensia .pub) pentru tine. Vom folosi și mai târziu.tutsplus
ca spațiu de nume aici. Acum, să copiem conținutul cheii publice în clipboard.
Dacă sunteți pe Mac, puteți utiliza această comandă pentru a copia rapid conținutul într-un fișier:
$ cat ~ / .ssh / id_rsa.pub pbcopy
cat ~ / .ssh / id_rsa.pub
, apoi copiați manual ieșirea.Pentru a face WordPress să funcționeze, puteți începe de la zero cu ajutorul instrumentelor din linia de comandă OpenShift sau puteți utiliza GUI pentru ao crea. Utilizarea unui GUI poate fi mai ușor pentru pornire, deci să o folosim. Vom scufunda mai mult în modul CLI mai târziu.
Conectați-vă la OpenShift și faceți următoarele:
Acum, veți fi redirecționat (ă) la un ecran pentru a introduce informațiile despre blog.
rhcloud.com
. Puteți selecta orice nume, deoarece oricum vom schimba ulterior cu propriul domeniu. În acest tutorial voi folosi http://demo2-tutsplus.rhcloud.com. Tutsplus
este numele meu de spațiu și demo2
este numele aplicației mele.Așteptați câteva momente și cererea dvs. va fi creată. Apoi, vi se va afișa o pagină care conține:
Să clonăm acest depozit la mașina noastră locală. De exemplu, propria mea arăta așa
git clone ssh: //[email protected]/~/git/php.git/
Vom reveni mai târziu. Faceți clic pe "Continuați la pagina de prezentare a aplicației" și aplicația dvs. va apărea împreună cu domeniul pe care îl alegeți. Lansați-l pe browserul dvs. și puteți continua instalarea normală în WordPress: Configurarea numelui site-ului, a numelui de utilizator admin și a parolei de administrator așa cum sunteți obișnuiți să faceți cu WordPress.
Următorul pas este pentru persoanele care au deja WordPress instalat undeva și vor să se mute la OpenShift. Dacă faceți o instalare proaspătă, puteți ignora acest lucru, dar vă sugerez să o citiți pentru o înțelegere suplimentară a structurii OpenShift.
Dacă aveți codul WordPress existent, nu este atât de greu să îl implementați pe OpenShift. Aveți mai multe opțiuni:
wp-config.php
pentru a corespunde cerințelor OpenShift.Iată câteva detalii suplimentare despre al doilea pas, deoarece migrația include trei lucruri:
wp-content / încărcări
la OpenShift.În acest pas, mă refer doar la integrarea codurilor. Într-un pas anterior, am clonat depozitul WordPress cu:
git clone ssh: //[email protected]/~/git/php.git/Ar trebui să aveți un aspect ca acesta în interiorul depozitului. Asigurați-vă că afișați și fișierele ascunse:
Lucru frumos despre OpenShift este că are o structură bună pentru WordPress. Când lucrați la WordPress, vă faceți griji numai wp-config.php
, plugin-uri și teme. Asta e.
Celelalte fișiere sau fișierul de bază WordPress (wp-admin, wp-include, wp-content / uploads, index.php, wp-login.php ...) sunt gestionate de OpenShift. OpenShift va trage automat fișierele din WordPress și va pune în locația corectă pentru dvs..
.OpenShift
dosarul este locul unde va locui majoritatea codului. Plugin-uri
și tematică
sunt dosarele corespunzătoare pentru WordPress. config / wp-config.php
este fișierul configurat WordPress personalizat.
.OpenShift / action_hooks
conține construirea și implementarea de scripturi conexe. Aceste scripturi sunt ceea ce va fi rulat pe serverul OpenShift pentru a implementa aplicația. Dacă doriți să personalizați procesul de construire, trebuie să configurați aceste fișiere script.
Aici este o parte a fluxului de lucru de implementare ori de câte ori o împingeți spre ramura de implementare (de obicei aceasta estemaestru
) este declanșat de la Git:
install_dir
. Apoi, descărcați și extrageți fișierul http://wordpress.org/wordpress-$install_version.tar.gz în acest folder. Install_version este predefinit în .OpenShift / action_hooks / build
.OpenShift / config / wp-config.php
pentru a suprascrie fișierul în install_dir / wp-config.php
(implicit wp-config.php din pachetul original.OpenShift / plugins
și .OpenShift / teme
la install_dir / wp-content / plugins
și install_dir / wp-content / teme
.OpenShift / plugins
sau .OpenShift / teme
în consecinţă. Apoi, comiteți codul și împingeți totul înapoi la OpenShift. git push
pentru a declanșa implementarea.$ git adăugați pluginuri
$ git adăugați teme
# Dacă u actualizare wp-config prea
$ git adăugați config / wp-config.php
$ git commit -m "Copiați fișierul din WordPress vechi"
$ git împinge master de origine
Cel mai probabil, nu veți utiliza domeniul prestabilit creat de OpenShift pentru dvs. Veți dori să utilizați propriul domeniu. Teoretic, pentru a-ți folosi domeniul personalizat, trebuie să faci două lucruri:
Procedând astfel, direcționați domeniul către serverul OpenShift, iar OpenShift este conștient de domeniul dvs. și va începe să vă difuzeze aplicația atunci când este solicitat din acel domeniu.
În funcție de registratorul domeniului, aveți o modalitate diferită de a crea o înregistrare CNAME sau o înregistrare pentru domeniul dvs. Din fericire, avem un document foarte amplu despre cum să facem acest lucru.
Dacă utilizați un subdomeniu pentru site-ul dvs. WordPress, cum ar fi blog.yourdomain.com
puteți adăuga o înregistrare CNAME la dvs. rhcloud.com
subdomeniu.
Dacă mergeți cu asta, este foarte ușor. Doar du-te la panoul de control al domeniului, adăugați puncte de înregistrare CNAME la URL-ul dvs. OpenShift WordPress.
De exemplu, cu name.com, am:
OpenShift.Axcoto.Com arată spre demo2-tutsplus.rhcloud.com. Textul din caseta de text este eșantionDeci, am configurat setările pentru a avea openshift.axcoto.com
arata spre demo2-tutsplus.rhcloud.com
În acest caz, unii registratori de domenii vă permit în continuare să setați o înregistrare CNAME pe un domeniu gol (de exemplu, domenii.com). Dacă da, continuați și creați-o exact așa cum faceți pentru subdomenii.
Dacă nu este, trebuie să găsim adresa IP a domeniului nostru OpenShift și să îndreptăm domeniul gol spre acesta:
ping demo2-tutsplus.rhcloud.com
PING ec2-54-242-75-238.compute-1.amazonaws.com (54.242.75.238): 56 octeți de date
64 octeți de la 54.242.75.238: icmp_seq = 0 ttl = 41 time = 96.713 ms
64 octeți de la 54.242.75.238: icmp_seq = 1 ttl = 41 time = 90.054 ms
^ C
--- ec2-54-242-75-238.compute-1.amazonaws.com statistici ping ---
2 pachete transmise, 2 pachete primite, pierderea pachetului de 0,0%
rotundă min / avg / max / stddev = 90.054 / 93.383 / 96.713 / 3.329 ms
Apoi am creat o înregistrare A și am arătat-o doar la acea adresă IP
În orice caz, punctul principal este să vă asigurați că domeniul pe care îl utilizați este rezolvat la aceeași adresă IP cu dvs. RHC-nor
domeniu.
Verificați acest lucru pingând ambele domenii:
Acum, domeniul dvs. poate să indice același server ca și subdomeniul OpenShift. Următorul pas este să configurați domeniul din partea WordPress.
Pentru moment, încă mai folosim demo2-tutsplus.rhcloud.com
pentru a accesa WordPress. Hai să mergem la tabloul de bord, apoi dă click pe Setări> Generalități. Schimbați ambele Adresă WordPress (URL)
și Adresa site-ului (URL)
domeniul dvs..
În acest moment, puteți fi blocat din site-ul dvs. WordPress. Nu-ți face griji. Reveniți la tabloul de bord OpenShift, selectați aplicația dvs., dați clic pe "Modificați" de lângă numele domeniului și actualizați domeniul OpenShift în propriul domeniu. Apoi salvează-l.
Accesați acum domeniul dvs. personalizat, openshift.axcoto.com
, veți vedea site-ul dvs. Când accesați tabloul de bord WordPress pe domeniul dvs. personalizat, puteți obține un avertisment SSL, ignorați-l. Acest lucru este cauzat de certificatul SSL se bazează pe domeniu și ne schimbăm la domeniul nostru personalizat, așa că ar trebui să oferim OpenShift certificatul SSL dacă vrem să folosim SSL.
Este foarte util să aveți acces la baza de date MySQL cu phpMyAdmin. Modul factor de a face misiunea MySQL în PHP.
Pe pagina de aplicație, faceți clic pe "Adăugați phpMyAdmin4.0". Așteaptă o clipă și phpMyAdmin va fi gata pentru tine. Odată instalat, lansați-l, vi se va cere numele de utilizator MySQL / parola. Am păstrat-o într-un pas anterior. Dacă ați uitat, puteți să vedeți întotdeauna numele de utilizator și să afișați parola în cartușul MySQL5.5.
Rețineți că numele bazei dvs. de date WordPress este identic cu numele aplicației.Dacă migrați de pe un blog existent, puteți utiliza phpMyAdmin pentru a importa baza de date a vechiului WordPress.
În acest moment, am terminat. Puteți să vă bucurați de instalarea WordPress. Dar să ne aruncăm într-un alt lucru de care aveți nevoie.
Planul gratuit are un dezavantaj: este închis automat dacă nu aveți vizite în două zile. Ori de câte ori un vizitator lovește site-ul dvs., acesta a început automat din nou, deci este bine, teoretic, dar în timpul acelei timpi de pornire, este puțin mai mult să vă vedeți site-ul,.
Pentru a evita acest lucru, poate doriți să utilizați Pingdom. Pingdom va verifica starea de timp a site-ului dvs. și vă va trimite o notificare prin e-mail atunci când site-ul dvs. este în jos. Pentru a face acest lucru, Pingdom ping-ul dvs. site-ul la fiecare zece minute sau cam asa ceva. Efectul secundar este că aplicația dvs. are un vizitator pentru fiecare zece minute, astfel încât să puteți trece prin oprirea automată OpenShift. Bonus punct, avem, de asemenea, un mare serviciu gratuit de monitorizare.
În acest scop, vă sugerăm să configurați un cont gratuit cu Pingdom în scopul monitorizării și să vă păstrați suficient de ocupat aplicația.
Un lucru minunat despre OpenShift este că puteți accesa de la distanță în aplicația dvs. ca un server. Nu este o cutie neagră pentru tine. Aveți posibilitatea să SSH în ea și să emită unele shell comanda (desigur, unele comenzi sensibile sunt dezactivate de OpenShift sau nu are nici un efect).
În pagina de aplicație, pe partea dreaptă, puteți vedea o postare care spune: "Acces de la distanță, doriți să vă conectați la aplicația dvs.".
Faceți clic pe el și veți avea o comandă de probă cum ar fi:
$ ssh [email protected]
532bd7655004468bcf0000e1
. Numele serverului, desigur, este demo2-tutsplus.rhcloud.com
.app-implementările
deține datele în timpul procesului de implementare, cum ar fi fișierul temporar, depozitul de clone. Datele de aici vor fi copiate în locația corectă mai târziu. Există mai multe directoare situate în el.app-implementările / curent / repo
are exact aceeași clonă a depozitului nostru Git. Orice ai pe mașina ta locală va fi aceeași aici.app-rădăcină / execuție / repo / php
este rădăcina documentului dvs. Este legătura simbolică app-rădăcină / date / curent
care este locația reală a codului dvs., despre care puteți citi mai josapp-rădăcină / date
acest dosar țineți codul, folderul de încărcare, tema și pluginul. Acesta este locul real în care toate acestea sunt localizate și vor fi legate de locații diferite.Datele din acest dosar vor fi persistente între versiuni. Dacă este schimbare, atunci schimbarea este prin script-urile dvs. de construire, nu prin OpenShift în sine.app-rădăcină / date / curent
codul WordPress al versiunii curente este localizat aici. Datele din acest dosar sunt, de obicei, persistente (cu excepția conținutului unei anumite legături simbolice din interiorul acestuia, care ar putea fi schimbată, deoarece se află în altă parte). Fișierele WordPress cum ar fi: wp-admin
, wp-includes
, index.php
, .htaccess
va sta aici. Conținutul acestui dosar este creat de scriptul de construcție la prima instalare a WordPress din tabloul de bord OpenShift. Mai târziu, în timpul fiecărei implementări, un anumit fișier poate fi copiat în scriptul de implementare. Însă OpenShift nu va reinițializa conținutul acestui dosar.app-root / date / încărcări
acesta este dosarul dvs. de încărcări, dar este un link simbolic app-root / date / curent / wp-content / încărcări
astfel încât să puteți încărca date persistente între mai multe versiuni.app-root / date / teme
conține temă. Este legat de ea app-root / date / curent / wp-content / teme
.Din nou, aceasta se datorează faptului că puteți încărca o temă din WordPress admin, astfel că este legată de exterior pentru a avea date persistente între versiuni.Dacă vă amintiți Etapa 2B, la fiecare desfășurare, conținutul ./ OpenShift / teme
vor fi copiate și în acest dosar.app-root / date / plugins
conține plugin.Is link-ul simbolic de la app-root / date / curent / wp-content / plugins
. Din nou, aceasta se datorează faptului că puteți încărca o temă din WordPress admin, astfel că este legată de exterior pentru a avea date persistente între versiuni. Dacă vă amintiți Etapa 2B, la fiecare desfășurare, conținutul ./ OpenShift / plugins
vor fi copiate și în acest dosar.app-root / date / curent / wp-content / încărcări
arata spre app-root / date / curent / wp-content / încărcări
git
este dosarul țineți-vă magazia Git goală pe care OpenShift ți-a cedat-oMySQL
păstrează datele MySQL și informațiile de configurare ale mysql.app-implementările
esteinstantaneu de cod în timpul desfășurării.php
conține configurație PHP, extensie php ...app-root / date / curent / wp-content / încărcări
cu scp. De exemplu:
$ cd your_current_wordpress
# Noi vom recurs copiați toate fișierul / folderul sub wp-content / uploads la
$ scp -r wp-content / uploads / * [email protected]: ~ / app-root / data / curent / wp-conținut / încărcări
Asigurați-vă că utilizați numele de utilizator corect și numele serverului. Este foarte important să utilizați numele de utilizator corect, altfel nu veți putea să vă conectați.
OpenShift nu acceptă FTP, dar puteți utiliza SSH File Transfer Protocol pentru a obține acces și browserul sistemului de fișiere; cu toate acestea, nu utilizați această metodă pentru a încărca și edita direct fișierul.
Luați în considerare acest lucru ca o modalitate de a vă ajuta să vizualizați rapid structura de fișiere în aplicația dvs., dacă nu sunteți familiarizat cu linia de comandă. Vom folosi FileZilla pentru a vă conecta. Nu vom folosi autentificarea prin parolă, ci autentificarea cheilor publice / private. Am configurat deja cheia publică înainte. Acum, adăugați un server nou ca pe ecran. Schimbați-vă setarea.
Salvați-l. Apoi, trebuie să ne actualizăm cheia privată cu FileZilla deoarece nu vom folosi autentificarea parolei pe OpenShift. Deschideți fișierul FileZilla, selectați SFTP-> Adăugați fișierul cheie apoi alegeți cheia dvs. privată pe care am generat-o împreună cu cheia publică din pasul anterior. Ar trebui să fie /Users/yourname/.ssh/id_rsa
.
Rețineți că din moment ce .ssh
include un punct, Mac-ul îl ascunde, astfel încât să puteți urma aceste sfaturi pentru a afișa un fișier ascuns în Mac.
Răspunsul da când solicită conversia. Acum, vă puteți conecta la gazda pe care am salvat-o înainte.
Odată ce vă aflați, puteți naviga în jurul dvs. și aveți un aspect al aspectului dosarului. Dar asigurați-vă că nu eliminați manual ștergerea codului WordPress acolo o cale corectă pentru implementarea OpenShift este de a folosi depozitul său Git. Puteți încărca manual fișierul, dar veți pierde și alte funcții frumoase ale implementării OpenShift.
Utilizând o interfață grafică poate fi ușor de văzut lucrurile în comparație cu utilizarea SSH pe terminal, dar nu abuzați de această metodă SFTP, ar trebui să o considerăm o modalitate rapidă de a verifica dacă există unele fișiere, nu să o utilizați pentru implementare. Dar o puteți utiliza pentru a descărca (în scopuri de rezervă) date media în app-root / date / încărcări
.
Dacă migrați dintr-o instalare WordPress existentă, puteți pur și simplu toate fișierele din dvs. wp-content / încărcări
la app-root / date / curent / wp-content / încărcări
Temele și pluginurile pot fi încărcate și instalate direct din interfața de administrare WordPress admin. Ele vor fi stocate în app-rădăcină / date / plugin
șiapp-rădăcină / date / temă
.Dar din moment ce am folosit Git pentru implementare pe OpenShift, ar trebui să le verificăm în depozitul nostru Git și nu ar trebui să încărcați direct din tabloul de bord WordPress. Puteți pune tema în plugin .OpenShift / teme
și .OpenShift / plugin
similar cu ceea ce este descris în Etapa 2B.
Pentru a recupera această secțiune post-instalare, voi spune că dacă sunteți un utilizator final care nu este familiarizat cu accesul Git sau terminal, atunci ar trebui să utilizați SFTP pentru încărcarea fișierului, instalarea pluginului / temei direct ca și ceea ce veți face într-o hosting shared.
Dacă sunteți un dezvoltator WordPress, vă rugăm să folosiți Git. În partea următoare vom afla mai multe despre calea potrivită cu OpenShift: implementare cu push Git. Si crede-ma, e mai usor decat suna.
În acest moment, puteți rula WordPress pe OpenShift, astfel încât să nu mai aveți nevoie de facturi pentru serviciul de găzduire. Dacă serviciul dvs. începe să obțină mai mult trafic, puteți adăuga mai multe unelte.
În acest tutorial, am făcut aproape totul prin intermediul tabloului de bord OpenShift, dar interfața UI are întotdeauna limitările sale. OpenShift vine cu un instrument de linie de comandă mai mare pe care îl vom învăța în următorul articol. În mod specific, vom învăța cum să menținem și să rezolvăm probleme în instalarea WordPress.
Lăsați un comentariu pentru a ne comunica cum faceți cu OpenShift.