Infrastructură și deployment

Nimic nu ajunge în producție fără să fi rulat mai întâi în altă parte

Fiecare aplicație pe care o construiesc primește mediul ei, unde se lucrează și unde o aprobi tu, separat de serverul pe care merge firma. Ce ajunge live a fost deja folosit, de tine, pe o adresă reală. Serverele stau unde îți convine, în România sau în restul Uniunii Europene, și știi de la început unde îți sunt datele.

Dezvoltare

app.dev.firmata.comAici aprobi
date de test generateNicio înregistrare reală

Producție

app.firmata.comLive
serverul tău, contul tăuPe numele tău

Mașini separate. Un build care iese prost în dezvoltare nu poate ajunge la serverul de care depinde firma.

Adresa ta de previzualizareNicio dată reală în dezvoltareConturi pe numele tăuLansări repetabile
Două mediiunul de construit, unul de rulat
Nicio dată realăclienții tăi nu ajung niciodată în dezvoltare
Conturile taleserver și domeniu pe numele tău, nu pe al meu

Recunoști situația

Ai nevoie de asta dacă

  • Modificările intră direct pe sistemul live, pentru că nu există alt loc unde să le pui.
  • Afli că s-a stricat ceva pentru că ți-a spus un client.
  • Nimeni nu poate spune ce s-a schimbat ultima dată, când, sau cum se dă înapoi.
  • O copie a bazei de date live stă pe laptopul cuiva, ca să poată testa pe ea.
  • Serverul, domeniul sau certificatele sunt în contul unui dezvoltator anterior.
  • Fiecare actualizare e o secvență făcută de mână, puțin altfel de fiecare dată.

Ce acoperă

Partea pe care n-o vede nimeni până când cedează

Nu se vinde separat de sistemul pe care îl duce în spate. Așa ajunge orice construiesc pe un server și așa rămâne accesibil.

Un mediu separat

Per aplicație, pe alt hardware decât cel pe care rulează firma ta.

Un server securizat

Configurat o dată, deliberat: firewall, acces doar cu chei, actualizări de securitate automate.

O lansare repetabilă

Aceiași pași de fiecare dată, dintr-o singură mișcare, nu o secvență pe care și-o amintește cineva.

O cale înapoi

Versiunea anterioară rămâne pe server, așa că anularea unei lansări ia secunde.

Certificate și secrete

HTTPS se reînnoiește singur. Parolele și cheile stau în afara codului sursă.

Backupuri testate

În afara serverului și criptate, cu o restaurare chiar încercată, nu presupusă.

Cum ajunge o schimbare la tine

O aprobi pe o adresă reală, nu pe o captură de ecran

Cât timp un sistem se construiește sau se extinde, ai o copie funcțională la adresa ta. O deschizi, o folosești și îmi spui ce nu e bine, înainte ca ceva să atingă sistemul pe care merge firma.

  • O adresă la care ajungem doar tu și eu, pe toată durata proiectului
  • Protejată și ținută în afara motoarelor de căutare
  • Exact versiunea pe care o aprobi e cea care se lansează
  • Funcțiile noi merg mai târziu pe același drum, nu direct în producție

De la o idee la utilizatorii tăi

Construitîn dezvoltare
Aprobatde tine, pe adresa ta
Lansatîn producție
Lansarea inițialăAcelași drum
O funcție nouăAcelași drum
O reparație urgentăAcelași drum, mai repede

Lansări

O lansare care poate fi anulată

Fiecare lansare stă pe server ca versiune de sine stătătoare, iar cea live e un indicator către ea. Întoarcerea la ziua de ieri înseamnă mutarea acelui indicator, nu reconstruirea a ceva sub presiune.

  • Aplicația se construiește în afara serverului tău, deci un build eșuat nu ajunge niciodată la el
  • Versiunile anterioare rămân pe loc, gata de comutat înapoi
  • Revenirea e aceeași acțiune de fiecare dată, deci funcționează și la două noaptea
  • Ce rulează e mereu identificabil, până la versiunea exactă

Lansări pe server

releases/2026-02-14-1042Păstrată
releases/2026-02-19-0915Păstrată
releases/2026-02-21-1730Live acum

Ca să te întorci

pune live pe 2026-02-19-0915Un pas

Ilustrație. Numele versiunilor sunt exemple. Contează forma: versiunea veche e încă acolo când cea nouă nu e bună.

Datele tale

Clienții tăi nu apar niciodată într-un mediu de dezvoltare

Scurtătura obișnuită e să copiezi baza de date live undeva la îndemână, ca să se poată testa pe ea. Din acel moment datele clienților tăi stau pe o mașină pe care n-o protejează nimeni. Eu nu lucrez așa.

  • Dezvoltarea rulează pe date generate, cu forma datelor tale, dar nu ale tale
  • Problemele care apar doar în producție se diagnostichează întâi din loguri
  • Dacă un caz chiar nu se poate reproduce altfel, valorile se înlocuiesc înainte să se copieze ceva, cu un script pe care îl poți citi
  • Ce s-a extras se șterge după ce problema e rezolvată, iar faptul se consemnează
Intră în dezvoltare
Structura și relațiileDa
Numele și tipurile câmpurilorDa
Înregistrări generateDa
Nume de clienți și emailuriNiciodată
Adrese și numere de telefonNiciodată
Prețuri și înțelegeriNiciodată
Note în text liberNiciodată

Serverul

Configurat deliberat, și scris undeva

Un server configurat din clicuri e un server pe care nu-l mai poate reface nimeni. Al tău e configurat la fel de fiecare dată, iar configurarea e documentată destul cât alt dezvoltator să o poată repeta.

  • Sunt deschise doar porturile care trebuie să fie deschise
  • Autentificarea cu parolă dezactivată, doar chei
  • Actualizările de securitate se aplică automat
  • Fiecare aplicație rulează sub contul ei, cu limitele ei, ca una să nu le lase pe celelalte fără resurse
  • HTTPS din prima zi, reînnoit fără să-și amintească cineva
ConfigurareStare
Firewall, închis implicitAplicat
Acces doar cu cheiAplicat
Actualizări de securitate automateAplicat
HTTPS și reînnoireAplicat
Izolare per aplicațieAplicat
Backup criptat în afara serveruluiAplicat
Restaurare testată periodicParte din planul lunar

Proprietate

Totul e pe numele tău din prima zi

Serverul, domeniul, serviciul de email și orice cont extern se deschid pe numele tău, cu facturarea ta. Plătești furnizorii direct, la prețul lor. Nu revând găzduire și nu pun adaos pe ea.

  • Vezi ce plătești, și cui
  • Poți trece la alt furnizor fără să mă întrebi
  • Dacă ne oprim din colaborare, nu trebuie mutat nimic din contul meu
  • Cum se leagă totul e scris undeva, nu ținut în capul meu

Ce ține fiecare

La mine

Accesul, cât timp lucrăm împreună

Documentația configurării

Nimic ce nu poți revoca

Pe numele tău

Server și găzduire

Domeniu și DNS

Serviciu de email

Conturi externe

Codul sursă

Cum decurge

De la un server gol la ceva de care depinde firma ta

  1. Pregătire

    Conturi deschise pe numele tău, server configurat, domeniu și certificate la locul lor.

  2. Construcție

    Se lucrează în mediul tău de dezvoltare, pe date generate, la adresa ta.

  3. Lansare

    După ce ai aprobat, aceeași versiune ajunge în producție într-un singur pas repetabil.

  4. Urmărire

    Prima perioadă după lansare e urmărită îndeaproape, pe utilizare reală și date reale.

O schimbare ajunge în producție doar după ce ai folosit-o tu

Cât costă

Două lucruri care merită spuse pe șleau

Parte din proiectPunerea la punct a infrastructurii e inclusă în construirea sistemului. Nu e o factură separată și nu e o opțiune pe care o poți refuza, pentru că fără ea nu există ce livra.
Furnizorii îți facturează țieServerul, domeniul și orice serviciu extern sunt ale tale, la prețul furnizorului. Nu le revând și nu adaug nimic peste.

Întrebări

Întrebări frecvente

Unde rulează efectiv aplicația mea?

Pe un server închiriat pe numele tău, de la un furnizor pe care îl vezi și îl plătești direct. Care furnizor și cât de mare depinde de ce face sistemul. Dacă ai deja găzduire, îți spun cinstit dacă e potrivită.

Am nevoie de un al doilea server pentru mediul de dezvoltare?

Nu. Mediul de dezvoltare vine ca parte din lucrare, fără cost separat pentru tine, și nu rulează pe serverul tău de producție.

Ai nevoie de acces la datele noastre live?

Ca să operez sistemul, am nevoie de acces la server. Ca să dezvolt pe el, nu am nevoie de datele tale și nu iau copii după ele. Dacă o problemă se poate reproduce doar cu structura reală, valorile se înlocuiesc întâi, iar extrasul se șterge după ce reparația e gata.

Datele mele sunt stocate în Uniunea Europeană?

Da, dacă nu ceri altceva. Furnizorii și locul unde stau serverele se aleg împreună cu tine și se trec în documentația configurării.

Ce se întâmplă dacă o lansare iese prost?

Versiunea anterioară rămâne pe server, deci sistemul se întoarce la starea de dinainte, iar la ce a eșuat ne uităm după aceea, nu sub presiune.

Pot trece la alt furnizor sau la alt dezvoltator?

Da, și nu trebuie desfăcut nimic înainte. Conturile sunt deja ale tale, codul sursă e al tău, iar felul în care se face lansarea e documentat, nu improvizat.

Folosești containere?

Depinde de proiect, și folosesc și containere, și varianta fără ele. Containerele își merită locul când un sistem are mai multe părți care trebuie să ruleze în versiuni știute, sau când aceeași configurare trebuie reprodusă în altă parte. O singură aplicație pe serverul ei de multe ori nu are nevoie de stratul ăsta în plus, iar rularea sub contul ei restricționat dă aceeași izolare cu mai puțin de întreținut. Îți spun în care caz ești, și de ce. Oricum ar fi, configurarea e scrisă undeva, ca să poată fi refăcută, nu ținută minte.

Cine se uită la el după ce e live?

Monitorizarea, backupurile și actualizările de după lansare sunt un serviciu lunar separat. Dacă preferi să îl operezi tu sau să îl dai echipei tale, totul e documentat pentru asta.

Mailurile firmei mele ajung în spam. E ceva ce repari?

Da, și e o lucrare pe care o iau de sine stătător, nu doar ca parte dintr-o construcție. Livrabilitatea, adică dacă mesajul ajunge în inbox sau în spam, e decisă de trei înregistrări din spatele domeniului tău, SPF, DKIM și DMARC, plus reputația pe care domeniul a adunat-o în timp. Le setez, și repar o reputație deja stricată. Rulez și propriul server de mail, deci le văd de pe ambele părți.

Vrei să știi cum ar fi pus în funcțiune sistemul tău?

Spune-mi ce ai azi și îți spun ce ar fi nevoie ca să meargă cum trebuie.

Discută punerea în funcțiune