Close Menu
Stiri IT
    Facebook X (Twitter) Instagram
    Trending
    • Mutare majoră pe piața TV: TCL preia afacerea de televizoare a Sony
    • Ai început să vorbești ca ChatGPT
    • Apple lansează suita Creator Studio pentru a concura cu Adobe
    • Android 16 primește o funcție majoră de accesibilitate auditivă
    • E-commerce Wojas: Cum să cumperi confortabil pantofi online?
    • Cum Devine România un Hub pentru IT Outsourcing
    • Noul agent Operator AI al OpenAI poate face lucruri pe web pentru tine
    • Acum ChromeOS se poate reseta de la sine fără a șterge laptopul
    Facebook Instagram X (Twitter) YouTube WhatsApp RSS
    Stiri IT
    • Tech
      • Mobile
      • Hardware
      • Aplicatii
      • Internet
      • Cybersecurity
      • Auto
    • Reviews
    • Stiinta
    • Divertisment
      • Jocuri
      • Filme
      • Seriale
    • Resurse
      • Ghiduri
      • Cum Sa
      • Info utile
      • Comunicate de presă
      • Oferte
      • Iluzii optice
      • Invenții și Descoperiri
      • Camere web live
      • Test viteza internet
      • Vremea
      • Curs valutar BNR
    • Despre
      • Contact NewIT.ro
      • Confidențialitate
      • Publicitate
      • Termeni si conditii
    Newsletter
    Stiri IT
    Prima pagină » Cum să începeți cu DevSpace și să dezvoltați rapid aplicații Kubernetes – CloudSavvy IT
    Cum sa

    Cum să începeți cu DevSpace și să dezvoltați rapid aplicații Kubernetes – CloudSavvy IT

    Tripon AlinBy Tripon Alin18 noiembrie 2021Updated:4 februarie 20230010 Mins Read
    Share Facebook Twitter Pinterest Copy Link LinkedIn Tumblr Email Telegram WhatsApp
    Follow Us
    Google News
    1637198222 Cum sa incepeti cu DevSpace si sa dezvoltati rapid aplicatii
    1637198222 Cum sa incepeti cu DevSpace si sa dezvoltati rapid aplicatii
    Share
    Facebook Twitter LinkedIn Pinterest Email Copy Link

    O ilustrație care arată sigla DevSpace, un nor cu un simbol terminal în interior

    DevSpace este un instrument open-source care îi ajută pe dezvoltatori să implementeze rapid aplicații native din cloud în clusterele Kubernetes. Abstrage o mare parte din complexitatea tradițională Kubernetes, astfel încât să puteți reveni la scrierea codului.

    DevSpace este independent de platformă și funcționează cu clustere, de la mașina dvs. locală la serviciile publice gestionate populare. Instrumentul este un CLI care automatizează operațiunile folosind API-urile Kubernetes. Nu trebuie să instalați nimic în cluster pentru a utiliza DevSpace.

    Practici moderne de dezvoltare pentru Kubernetes

    DevSpace aduce multe aspecte ale experienței moderne de programare a aplicațiilor pentru implementările bazate pe Kubernetes. Vă permite să rulați mediul de dezvoltare pe cluster cu suport pentru reîncărcarea automată la cald. Când un fișier local se modifică, DevSpace vă actualizează automat containerele cu noul conținut.

    Redirecționarea portului încorporată înseamnă că puteți utiliza localhost pentru a vă accesa implementarea. Nu trebuie să deschideți porturi sau să configurați intrări HTTP pe clustere de dezvoltare, oferind o experiență îmbunătățită pentru dezvoltatori și o securitate mai mare.

    O diagramă care arată fluxul de lucru DevSpace
    DevSpace

    DevSpace ajută și la depanare. Acceptă setarea punctelor de întrerupere folosind un instrument Remote Debugger, oferind inspecție live a aplicațiilor containerizate în cloud. De asemenea, este ușor să vizualizați jurnalele unui container sau să începeți o sesiune de terminal fără a rula comenzi Kubectl greoaie.

    O interfață web care rulează localhost vă permite să monitorizați și să interacționați cu aplicația care rulează. Puteți scăpa de terminalul dvs. dacă preferați o experiență mai vizuală.

    Instalarea DevSpace

    DevSpace este distribuit ca un binar autonom care funcționează pe sistemele Windows, Mac și Linux. Sunt disponibile mai multe opțiuni de instalare. Iată comanda recomandată pentru a descărca DevSpace pentru Linux și pentru a adăuga CLI în calea dvs.:

    dev
    sudo install devspace /usr/local/bin

    Alternativ, puteți utiliza npm, managerul de pachete Node, pentru a instala și actualiza DevSpace:

    npm install -g devspace

    Această comandă vă va oferi o funcționare devspace în calea dvs., cu condiția să aveți deja instalat npm.

    DevSpace folosește „activ”KUBE_CONTEXT” în același mod ca și alte instrumente ecosistemice precum Kubectl și Helm. A stabilit KUBECONFIG la un fișier de configurare compatibil Kubectl care definește conexiunea la cluster:

    export KUBECONFIG=/path/to/kubeconfig.yaml
    
    # Uses $KUBECONFIG
    devspace deploy

    Crearea unui proiect

    Primul pas în construirea cu DevSpace este să inițializați directorul de proiect. Aceasta va crea un devspace.yaml fișier care conține configurația DevSpace pentru depozitul dvs.

    devspace init

    Vi se va solicita să selectați rutina de implementare pe care intenționați să o utilizați. DevSpace poate funcționa cu Kubectl, Helm sau Kustomize atunci când lansați aplicația în cluster.

    Captură de ecran a "devspace init" comanda

    Cel sugerat QUICKSTART opțiunea este o diagramă specială care vă permite să definiți componente ale aplicației dvs., cum ar fi serverul web frontend, serverul API backend și baza de date, în loc să furnizați diagrame Helm sau manifeste Kubectl create manual. Utilizați acest lucru dacă construiți un sistem cu o structură convențională și nu doriți să petreceți timp creând propriile resurse Kubernetes.

    Citeste si  Cum să reparați ecranul spart al telefonului mobil sau al tabletei

    Urmați instrucțiunile pentru a furniza DevSpace calea către fișierul dvs. Docker. Va trebui să furnizați autentificarea de registry și câteva informații de bază despre imaginea dvs., cum ar fi portul pe care ascultă. DevSpace va produce automat o configurație gata de utilizare care vă permite să rulați devspace deploy pentru a vă pune aplicația live pe Kubernetes.

    Dacă nu utilizați opțiunea de pornire rapidă, va trebui să furnizați calea către diagramele Helm sau manifestele Kubernetes. Urmați instrucțiunile pentru a construi o configurație inițială. Odată ce ați ieșit din asistentul de configurare, puteți continua să adăugați imagini și implementări suplimentare, editând manual devspace.yaml fişier.

    Adăugarea unei imagini

    Proiectele DevSpace sunt construite din una sau mai multe imagini container. Pentru a înregistra o imagine în proiectul dvs., adăugați-o sub images cheia dvs devspace.yamlfişier:

    images:
      app:
        image: example.com/example/image:latest
        dockerfile: ./Dockerfile
        build:
          disabled: true

    The image câmpul definește numele etichetei imaginii. The dockerfile câmpul este opțional; când este setat, ar trebui să facă referire la calea către fișierul Docker al imaginii din proiectul dvs. Imaginile cu Dockerfiles vor fi create automat de către devspace build și devspace deploy comenzi, cu excepția cazului în care build.disabled este true în configurația imaginii.

    Imaginile sunt construite în paralel pentru a accelera performanța. The --build-sequential flag obligă imaginile să fie construite individual, în ordinea în care sunt specificate. DevSpace va împinge automat fiecare imagine în registrul respectiv după ce se finalizează construcția.

    Imaginile nu sunt reconstruite automat decât dacă DevSpace detectează o modificare fie în fișierul Dockerfile, fie în fișierele din contextul lor de construcție. Puteți forța o reconstrucție a tuturor imaginilor configurate cu ajutorul --force-build steag.

    Adăugarea unei implementări

    A doua bucată din a devspace.yaml este al tau deployments. Acestea definesc resursele care vor fi create în clusterul dumneavoastră.

    deployments:
      - name: "helm chart"
        helm:
          chart:
            name: example/example-app
          values:
            VARIABLE_OVERRIDE: "new-value"
      - name: "kubectl manifests"
        kubectl:
          manifests:
            - .kube/manifests

    Acest fișier definește două implementări separate, una folosind Helm și cealaltă Kubectl. Când alergi devspace deploy, atât diagrama Helm, cât și manifestele Kubectl vor fi instalate în cluster.

    Repetând deploy comanda vă va actualiza implementările. DevSpace redistribuie numai componentele care s-au modificat, cu excepția cazului în care --force-deploy este folosit steag.

    Deoarece DevSpace funcționează în clustere, promovarea implementării dvs. de la dezvoltare la producție este un caz de schimbare a dvs. KUBECONFIG variabilă de mediu și reluare devspace deploy. Acest lucru vă oferă un singur mecanism consistent pentru gestionarea mai multor implementări independente ale sistemului dumneavoastră.

    Utilizarea profilurilor

    DevSpace acceptă profiluri care vă permit să modificați devspace.yaml secțiuni pentru fiecare dintre mediile dvs. Fiecare profil numit poate înlocui, îmbina și modifica câmpuri din fișierul dvs. de configurare.

    Citeste si  Ofertele noastre preferate de la vânzarea de Vinerea Neagră 2021 de la Walmart – LifeSavvy

    Profilurile în sine sunt, de asemenea, definite în dvs devspace.yaml:

    images:
      api-server:
        image: example.com/api-server:latest
      web-server:
        image: example.com/web-server:latest
      debug:
        image: example.com/debug-tool:latest
    # ... omitted
    profiles:
      - name: production
        patches:
          - op: remove
            path: images.debug

    Profilurile sunt activate prin trecerea -p sau --profile marcați comenzile DevSpace. Iată cum să începeți o implementare folosind production profil definit mai sus. Implementarea nu va include debug imaginea, deoarece este eliminată de unul dintre patch-urile profilului.

    devspace deploy --profile production

    Folosind Hot Reload

    Funcționalitatea de reîncărcare la cald este activată prin setarea sincronizării fișierelor:

    dev:
      sync:
        - imageSelector: example.com/api-server:latest
          localSubPath: ./api/
          containerPath: /var/www/html
          excludePaths:
            - vendor/

    Adaugă dev cheie ca un câmp de nivel superior în dvs devspace.yaml, apoi utilizați sync pentru a configura reîncărcarea la cald pe bază de imagine. The imageSelector potrivește etichetele de imagine pentru a aplica regula de reîncărcare la cald. Fișiere de la localSubPath din directorul dvs. de lucru va fi sincronizat cu containerPath în cazurile de containere implementate.

    Porniți o sesiune de reîncărcare la cald rulând devspace dev sau devspace sync. Prima comandă pornește toate caracteristicile mediului DevSpace pentru dezvoltatori, inclusiv redirecționarea portului și fluxul de jurnal în direct.

    Reîncărcarea la cald este implicit înlocuirea fișierelor din containerele existente. Este similar cu utilizarea volumelor Docker și a monturilor de legare atunci când lucrați cu instanțe de containere locale. În unele scenarii, este posibil să doriți să începeți o nouă implementare DevSpace atunci când sistemul dvs. de fișiere se schimbă. Acest lucru se realizează prin intermediul separat autoReload opțiune:

    images:
      api:
        image: example.com/api-server:latest
    deployments:
      - name: api-deployment
      # ... omitted
    dev:
      autoReload:
        paths:
          - ./kernel/*
        images:
          - example.com/api-server:latest
        deployments:
          - api-deployment

    Acest exemplu va fi redistribuit api-deployment ori de câte ori fișiere în local kernel schimbarea directorului. Acest lucru este ideal atunci când modificați fișierele care trebuie rulate printr-un proces de compilare pentru a le face utile pentru containerele dvs.

    Port forwarding

    Redirecționarea portului este configurată prin intermediul dev.ports câmp din dvs devspace.yaml. Redirecționarea inversă este, de asemenea, acceptată, permițând localhost adresele din containerele dvs. se mapează la porturile de pe mașina dvs. locală.

    dev:
      ports:
        - imageSelector: example.com/api-server:latest
          forward:
            - port: 8080
              remotePort: 80
          reverseForward:
            - port: 9000
              remote: 9000

    Acest exemplu setează un forward de la localhost:8080 pe mașina dvs. la portul 80 în containere care rulează example.com/api-server imagine. Există, de asemenea, o inversare înainte care direcționează traficul în container localhost:9000 înapoi la portul 9000 al mașinii dvs.

    Alte caracteristici

    Pe lângă capabilitățile acoperite aici, DevSpace oferă și suport pentru alte câteva grupuri de caracteristici care vă permit să monitorizați implementările, să interacționați cu containerele și să configurați fluxuri de lucru avansate de dezvoltare:

    • Lansări automate ale terminalelor vă permite să începeți o sesiune shell de la distanță de fiecare dată când rulați devspace dev.
    • Deschidere automată a adresei URL pornește site-uri web și aplicații web în browser când intrați în modul de dezvoltare.
    • Înregistrare configurabilă definește ce containere ar trebui să apară în fluxul de jurnal în modul dev.
    • Comenzi personalizate acționează ca comenzi rapide către acțiuni comune, ajutând noii membri ai echipei să interacționeze cu implementările tale fără a fi nevoie să învețe procese îndelungate în Kubectl.
    • Cârlige rulați comenzi în timpul procesului de implementare, permițându-vă să configurați manual containerele sau să înregistrați noi implementări la un serviciu de monitorizare centralizat.
    • Interfața cu utilizatorul rulează automat în modul de dezvoltare cu devspace dev și poate fi deschis în browser folosind devspace ui.

    DevSpace oferă, de asemenea, pluginuri care pot adăuga și mai multe funcționalități sistemului. API-ul pluginului acceptă instalarea de la adrese URL la distanță sau scripturi locale și facilitează noi comenzi, cârlige și variabile. Dezvoltarea propriului plugin oferă o modalitate de a standardiza utilizarea DevSpace în mai multe proiecte independente.

    Citeste si  Cum să anulați distribuirea unui document Google

    Implementări în conducte CI/CD

    DevSpace poate gestiona implementările de producție ca parte a conductei CI/CD. Oferă o imagine oficială Docker și acceptă utilizarea non-interactivă dacă includeți selectoare explicite, cum ar fi -l pentru etichetă în comenzile dvs.

    O implementare în interiorul unei conducte CI ar putea arăta astfel:

    echo $KUBECONFIG_CI_VARIABLE > /path/to/kubeconfig
    export KUBECONFIG=/path/to/kubeconfig
    devspace deploy --profile production --timeout 60 --wait --skip-build

    Aceasta va implementa aplicația dvs. folosind production Profil DevSpace. The --skip-build flag indică DevSpace să nu construiască imaginile dvs. Construcțiile ar trebui de obicei tratate ca o etapă separată mai devreme în pipeline.

    The --wait flag forțează DevSpace să aștepte disponibilitatea numărului de pod specificate în dvs devspace.yaml, în loc să se încheie imediat după ce executați comanda. Acest lucru este mai potrivit pentru un mediu CI în care doriți confirmarea faptului că volumul de lucru este activ. Permiterea lui DevSpace să iasă fără a aștepta ar putea însemna ca conducta dvs. să fie marcată ca reușită, chiar dacă există o problemă de implementare.

    Concluzie

    DevSpace câștigă teren ca instrument de implementare Kubernetes orientat către dezvoltatori, care oferă abstracții utile pentru operațiunile cheie. Reduce cantitatea de YAML necesară pentru a lansa containere într-un cluster, înlocuindu-l cu chei de configurare simple și comenzi de terminal care definesc, construiesc și pornesc imagini.

    Interfața de utilizare DevSpace
    DevSpace

    Fiind un instrument independent de platformă și mediu, DevSpace permite dezvoltatorilor să-și facă mai puține griji cu privire la caracteristicile unice ale clusterelor individuale. Indiferent de ținta de implementare, experiența generală este similară cu construirea unui sistem tradițional pe mașina dvs. locală. Acest lucru ajută la atenuarea curbei de învățare Kubernetes prin maparea conceptelor înapoi la practicile de dezvoltare înțelese mai universal.

    Follow on Google News
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email Copy Link
    Tripon Alin
    • Website

    Alin Tripon Fondator NewIT.ro, pasionat de tehnologie, maşini, divertisment, ştiinţa şi jocuri video, am creat acest portal de ştiri it, tutoriale, ghiduri şi alte informații utile. Pasionat de lumea digitală și cultura tech, în timpul liber îmi îmbogățesc cunoștințele ce țin de marketing digital, în special SEO.

    Related Posts

    Cum să aruncați o saltea veche în mod responsabil

    23 iulie 2024

    Cum poti impacheta mai eficient lucrurile in trolere?

    31 ianuarie 2024

    Cum să salvați pagini PDF ca imagini JPG în Windows și macOS

    19 iulie 2023
    Add A Comment
    Leave A Reply Cancel Reply

    Top Posts

    Top 5 aplicații de descărcat muzică gratis direct pe telefon sau tabletă Android

    21 aprilie 202056 Views

    E-commerce Wojas: Cum să cumperi confortabil pantofi online?

    13 martie 202525 Views

    Ai început să vorbești ca ChatGPT

    19 ianuarie 202615 Views
    Latest Reviews
    8.5

    Pico 4 Review: Should You Actually Buy One Instead Of Quest 2?

    Tripon Alin15 ianuarie 2021
    8.5

    Pico 4 Review: Should You Actually Buy One Instead Of Quest 2?

    Tripon Alin15 ianuarie 2021
    8.1

    A Review of the Venus Optics Argus 18mm f/0.95 MFT APO Lens

    Tripon Alin15 ianuarie 2021
    Stay In Touch
    • Facebook
    • YouTube
    • TikTok
    • WhatsApp
    • Twitter
    • Instagram

    Subscribe to Updates

    Get the latest tech news from FooBar about tech, design and biz.

    Demo
    Top Posts

    Top 5 aplicații de descărcat muzică gratis direct pe telefon sau tabletă Android

    21 aprilie 202056 Views

    E-commerce Wojas: Cum să cumperi confortabil pantofi online?

    13 martie 202525 Views

    Ai început să vorbești ca ChatGPT

    19 ianuarie 202615 Views
    Latest Reviews
    8.5

    Pico 4 Review: Should You Actually Buy One Instead Of Quest 2?

    Tripon Alin15 ianuarie 2021
    8.5

    Pico 4 Review: Should You Actually Buy One Instead Of Quest 2?

    Tripon Alin15 ianuarie 2021
    8.1

    A Review of the Venus Optics Argus 18mm f/0.95 MFT APO Lens

    Tripon Alin15 ianuarie 2021
    Stay In Touch
    • Facebook
    • YouTube
    • TikTok
    • WhatsApp
    • Twitter
    • Instagram

    Subscribe to Updates

    Get the latest tech news from FooBar about tech, design and biz.

    Demo
    Facebook X (Twitter) Instagram Pinterest
    • DESPRE NOI
    • CONTACT
    • CONFIDENTIALITATE
    • TERMENI
    © 2025 Toate drepturile rezervate.

    Type above and press Enter to search. Press Esc to cancel.