paint-brush
Huk qallariqpa yanapakuynin huk Vite dApp Proyecto Dockerizing kaqpaqby@ileolami
631 ñawinchasqakuna
631 ñawinchasqakuna

Huk qallariqpa yanapakuynin huk Vite dApp Proyecto Dockerizing kaqpaq

by Ileolami6m2024/09/24
Read on Terminal Reader

Nishu unay; Ñawinchanapaq

Docker huk kichasqa plataforma kan ruwanakuna ruwanapaq, apachinapaq chaymanta purichinapaq. Docker llamk'anaykita huklla entidad hina paqueteayta chaymanta purichiyta saqin huk suchuy sapanchasqa muyuriqpi **CONTAINER sutiyuq. Contenedores llasaq kanku chaymanta tukuy ima necesitakun ruwana purichinapaq. Llamk'achkaspa waqaychanakunata rakiyta atikunki, chaymanta llapa rakisqaykiwan kikin waqaychanata kikin llamk'aq chaskisqankumanta allinta qhaway.
featured image - Huk qallariqpa yanapakuynin huk Vite dApp Proyecto Dockerizing kaqpaq
Ileolami HackerNoon profile picture
0-item


Ichapas tapukuchkanki imataq DOCKERIZE kasqanmanta. Niyta munan Docker llamk'achiyta dApp proyectoykita contenedorman churanapaq.

Docker huk kichasqa plataforma kan ruwanakuna ruwanapaq, apachinapaq chaymanta purichinapaq. Docker atichisunki ruwanakunayki infraestructuraykimanta t'aqayta chaymanta software usqhaylla quyta atikunki.

  • Yanapakuykuna web ruwanakuna, APIkuna, kuyuchina ruwanakuna chaymanta qhipa yanapakuykuna kanku. Chayqa qillqasqayki codigo, bibliotecakuna llamk'achisqayki, chaymanta purinanpaq necesitasqan ruwanakuna ima kachkan.
  • Infraestructura imayna llamkana sistema(OS), Llika churay, web servidorkuna, willaypa tiyapuynin chaymanta wak yanapakuykuna ruwanayki tinkin. Chantapas hardware utaq virtual makinakuna maypi ruwanayki purin chayta ruwan.

Docker ruwanaykita huklla entidad hina paqueteayta chaymanta purichiyta saqin huk suchuy sapanchasqa muyuriqpi CONTENER sutiyuq.

Contenedor nisqa

Contenedores llasaq kanku chaymanta tukuy ima necesitakun ruwana purichinapaq, chayrayku mana imachus host kaqpi churasqa kaqpi hapipakunaykichu tiyan. Llamk'achkaspa waqaychanakunata rakiyta atikunki, chaymanta llapa rakisqaykiwan kikin waqaychana kaqlla llamk'aq chaskisqankumanta allinta qhaway.

Ejemplopaq, qam chaymanta llamk'aqmasiykikuna huk dApp ruwaypi llamk'achkanki mayqinchus Node.js chaymanta Hardhat kaqwan llamk'achkan. Qallariypi, llamk'ayta llaqta makinaykipi churanki, yachaspa manaraq llamk'aqmasiykikuna ruwayta kitipi purichiyta atichkaptinku, Node.js chaymanta Hardhat sistemankupi churananku tiyan. Kunanqa, yuyaykusun huk llamk'aqmasiyki huk makinata llamk'achkan mana Node.js chaymanta Hardhat kaqwan tupaq. ¿Imaynatataq kay sasachakuyta allichawaq?

Docker kaqwan, ruwanaykita, llapa hapipakuyninkunawan kuska, huklla waqaychanaman paqueteayta atikunki mayqinchus mayqin llamkana llamkanapipas puriyta atin. Kayqa software utaq dependenciakuna sapanchasqa huk makinakunapi churaymanta sasachakuy allichan.

Imahinakuna

Yanapakuyniyki contenedorpi churasqaykimanta, ¿imaynatataq chayta purichinki?

Huk frontend ruwaq hina, musuq React ruwana qallarichkanki, aswanta npx create-react-app utaq npm init vite@latest purichinki. Huk kachkaq llamk'anapaq, git pull qatisqa npm install kaqwan purichiwaq, chaypi purichinaykipaq. Chaynallataqmi, huk waqaychanata purichinaykipaqqa, waqaychanapa rikchaynin sutiyuqta necesitanki.

Waqaychasqa siq'i nisqaqa huk kamachisqa paquete kaqmi, llapa willañiqikuna, iskayniyuq, bibliotecakuna, ruwanakuna ima ruwanaykita waqaychana ukhupi purichinapaq necesitasqanku. Tukuy ima huñusqa hina, chaymi mayqin pachamamapipas mana chiriyaspa purinanpaq.

Uraypi qhaway huk waqaychana siq'ita:

"web3-dapp:latest" sutiyuq Docker siq'i kamachiy interfazpa pantalla hap'iynin.

Prácticos nisqakuna

Kay t'aqapi, yachanki imayna contenedor ruwayta chaymanta appniykimanta rakiyta.

Ñawpaqtaraqmi necesitakun

  1. Docker Desktop nisqap qhipa kaqnintam churarqanki.
  2. Git cliente nisqatam churarqanki.
  3. Willañiqikunata llamk'achinapaq IDE icha qillqa allichaqniyuq kanki. Docker Visual Studio C ode llamk'achiyta yuyaychakun.

Aplicacionniykita contenedorpi churay

  1. Sapsi willañiqiykipi, docker qallariy kay kamachiy tapuywan:

     docker init
  2. Tapusqakunaman kutichiykunata quy

     ? What application platform does your project use? Node ? What version of Node do you want to use? 20.16.0 ? Which package manager do you want to use? npm ? Do you want to run "npm run build" before starting your server? No ? What command do you want to use to start the app? ["npm", "run", "dev"] ? What port does your server listen on? 5173
  3. Kimsa yapasqa willañiqikunatam willañiqintinpi rikunki, chaykunam .dockerignore , compose.yaml chaymanta DockerFile

  1. Dockerfile ukhupi, willañiqita ch'uyanchaspa kaykunata yapay:

     # syntax=docker/dockerfile:1 ARG NODE_VERSION=20.16.0 FROM node:${NODE_VERSION}-alpine # Use development node environment by default. ENV NODE_ENV development WORKDIR /app # Copy package.json and package-lock.json to the working directory COPY package.json package-lock.json ./ # Install dependencies RUN npm install # Copy the rest of the source files into the image COPY . . # Change ownership of the /app directory to the node user RUN chown -R node:node /app # Switch to the node user USER node # Ensure node_modules/.bin is in the PATH ENV PATH /app/node_modules/.bin:$PATH # Expose the port that the application listens on EXPOSE 5173 # Run the application CMD ["npm", "run", "dev"]
  2. Kayta llamk'achispa waqaychana siq'iykita ruway:

     docker build -t <your-image-name> .
  3. Contenedor siq'iyki qhawanaykipaq, docker mesaykiman riy, Images ñit'iy , uraypi rikuchisqa hina

    utaq kay kamachiyta llamk'achiy atikunki,

     docker images
  4. terminalniykipi waqaychana siq'iyki qhawanaykipaq

    "docker siq'ikuna" kamachiypa lluqsiyninta rikuchiq terminal ventanap pantalla hap'iynin

  5. Imahinata purichiy:

     docker run -p 5173:5173 <your-image-name>

Kayhina lluqsiyta rikunayki tiyan:

 > [email protected] dev > vite VITE v5.4.2 ready in 222 ms ➜ Local: http://localhost:5173/ ➜ Network: http://172.17.0.2:5173/

Aplicacionta rakinakuy

  1. Docker Hub nisqaman qillqakuy utaq yaykuy .

  2. Waqaychasqa wasi ruway ñit'inata akllay.

  3. Waqaychasqaykita kikin waqaychana siq'i sutiwan sutichay. Rikuna Llaqtapaq kananpaq qhaway .

  4. Ruway nisqapi akllay.

  1. Docker Hub nisqaman yaykuy kamachiy chiruwan

     docker login -u <YOUR USERNAME>
  2. Contraseña nisqaykitaqa qillqay

    Contraseñaykiqa manam rikukunqachu qillqachkaspa

  3. docker tag kamachiyta llamk'achiy getting-started siq'iman musuq sutita qunaykipaq. YOUR-USER-NAME nisqawan Docker ID nisqawan tikray:

    Kay denied: requested access to the resource is denied .

    Kayta allichanapaq, .

    1. docker login yaykuywan wakmanta yaykuy , enter ñit'iy.
    2. Chay qhepamanmi navegadorniykiman purinki,
    3. OTP nisqayki terminalta copiay hinaspa yaykuchiy,
    4. CONFIRM nisqapi ñit’iy
    5. siq’ita wakmanta tanqay

    Huk lluqsiyta rikunki kayhinata:

Kayqa siq'iyki ruwasqa kaqta chaymanta huk registroman tanqasqa kaqta rikuchin. Kunanqa equipoyki kay siq'ita aysayta atin chaymanta ruwana llaqta makinankupi purichiyta atin.

Qhawayta atikunki maskana barrapi waqaychana siq'iyki maskaspa docker mesaykipi utaq docker hub kaqpi .

Sasachakuy allichay

  • Puerto Ch'aqway : .

    • Pantasqa : sichus puerto llamk'achisqaña karqan.

    • Allchay : Puerto llamk'achispa ruwayta riqsichisqa chaymanta kay kamachiykunata llamk'achispa tukusqa:

       # Find the process using port 8000 lsof -i :8000 # Kill the process (replace <PID> with the actual process ID found from the previous command) kill -9 <PID> 

    • Hukninpiqa, Docker waqaychanata huk puertopi purichiyta atinki:

       docker run -p 8001:8000 <your-image-name>
  • Huk Aplicacionta musuqyachiy

    Imapas appniyki musuqyachisqayki p.h. huk sintaxis utaq ruwayta tikranki, .

    1. Docker mesaykita sayachiy, Containers nisqapi ñit'iy

    2. Puertota sayachiy hinaspa chinkachiy nisqapi ñitiy

    3. Yanapakuymanta wakmanta ruway docker build kamachiyta llamk'achispa

       docker build -t <your-image-name> .
    4. Appta wakmanta purichiy

       docker run -p 5173:5173 <your-image-name>


Conclusion

Kay yanapakuyta qatispa, mana sasachu ruwanayki chaymanta dependenciankuna huk waqaychanaman paqueteayta atikunki, equipoykiwan qunakunki chaymanta mayqin makinapipas mana sasachu purichiyta atikunki. Kayqa mana yanapanakuyllatachu kallpachan aswanpas pachamama churaywan chaymanta tupachiywan tupaq sasachakuykunata pisiyachin.