Skip to main content

I-install ang Docker sa Ubuntu 18.04 at I-deploy ang NGINX Container

Create flask app & configure nginx - Deploy Flask application on EC2 p.4 (Hunyo 2026)

Create flask app & configure nginx - Deploy Flask application on EC2 p.4 (Hunyo 2026)
Anonim

Ang mga lalagyan ay isang mahusay na paraan upang i-deploy ang ilang pagkakataon ng mga serbisyo at apps. Gamit ang mga tool na ito ng containerized, maaari mong madaling ilipat ang mga ito mula sa isang server papunta sa isa pa, i-update ang mga ito nang mabilis, at kahit na i-deploy ang mga ito papunta sa isang kumpol para sa napakalaking kakayahang sumukat. Tatalakayin namin kayo sa proseso ng pag-install ng isa sa mga pinaka-popular na tool sa lalagyan sa merkado, Docker, at pagkatapos ay i-deploy ang NGINX web server.

Pag-install

Ang pag-install ng Docker sa Ubuntu 18.04 ay hindi kapani-paniwalang madali. Buksan ang isang terminal window (o mag-log in sa iyong Ubuntu server sa pamamagitan ng SSH). Bago mo i-install ang Docker, pinakamahusay na i-update at i-upgrade ang iyong server. Tandaan, gayunpaman, kung ang pag-upgrade ay kasama ang kernel, kakailanganin mong i-reboot ang server upang makakaapekto ang mga pagbabago. Dahil dito, patakbuhin ang mga pag-update / mag-upgrade ng mga utos sa panahon ng isang pag-reboot ng server ay posible.

Ang mga utos para sa pag-update at pag-upgrade ng Ubuntu Server ay:

sudo apt-get updatesudo apt-get upgrade

Kapag kumpleto ang dalawang utos na iyon (at nag-reboot ka, kung kinakailangan ito), maaari mong i-install ang Docker sa pamamagitan ng pag-isyu ng sumusunod na command:

sudo apt-get install docker.io

Sa sandaling makumpleto ang utos, simulan at paganahin ang Docker gamit ang mga utos:

sudo systemctl start dockersudo systemctl paganahin ang docker

Pinagana namin ang Docker upang awtomatiko itong magsimula, dapat na reboot ang server.

Susunod na nais mong idagdag ang iyong user sa grupo ng docker (kung hindi man, kakailanganin mong magpatakbo ng mga utos ng docker sa mga pribilehiyo ng sudo, na maaaring humantong sa mga isyu sa seguridad). Ito ay maaaring alagaan ng isang solong utos:

sudo usermod -aG docker $ USER

Kung sakaling mausisa ka, ang mga sumusunod ay nagpapaliwanag sa utos sa itaas:

  • usermod ay ang aktwal na utos upang baguhin ang isang user.
  • Ang isang opsiyon ay nagtuturo sa usermod na inilalagay namin sa user.
  • Ang mga pagpipilian sa G ay nagtuturo sa usermod dinadagdag namin ang gumagamit sa isang grupo.
  • Ang docker ay ang grupong idaragdag namin ang gumagamit.
  • $ USER ay nagtuturo ng bash upang gamitin ang kasalukuyang naka-log in user.

Matapos patakbuhin ang command sa itaas, kailangan mong mag-log out at mag-log in para magawa ang mga pagbabago.

Handa ka na ngayong magsimulang magtrabaho sa Docker.

Paghahatid ng Mga Larawan Mula sa DockerHub

Ang DockerHub ay isang sentralisadong lalagyan na nagtatampok ng mga larawan na maaaring magamit bilang batayan para sa iyong mga lalagyan. Ang DockerHub ay naglalaman ng libu-libong mga imahe, na ang ilan ay nagsisilbi ng napaka tiyak (at kahit na mga layunin sa angkop na lugar). Dahil ang aming layunin ay upang maitaguyod ang lalagyan ng NGINX, babalikan namin ang opisyal na lalagyan ng NGINX. Bago natin gawin iyon, i-isyu ang utos:

docker images

Ang output ng utos na iyon ay dapat magpakita ng walang kasalukuyang mga imahe na matagpuan. Hilahin ang NGINX na imahe gamit ang command:

docker pull nginx

Ang utos sa itaas ay makakakuha ng imahe. Kung gagawa ka ng utos docker images , makikita mo ang nakalistang nabuong imahe.

Pag-deploy ng NGINX Container

Ngayon na mayroon kami ng isang imahe na kung saan base sa aming lalagyan, ipapadala namin ang containerized na halimbawa ng NGINX sa aming network. Sa NGINX bilang isang lalagyan, maaari mong kontrolin kung anong port ang ipinapatupad nito. Ilalagay namin ang NGINX sa standard port 80. Upang gawin ito mangyari, ang utos ay mukhang:

docker run --name docker-nginx -p 80:80 nginx

Isang maliit na paliwanag ng utos sa itaas:

  • Ang docker ay ang aktwal na utos
  • patakbuhin ang tagubilin sa utos na kung ano ang susunod ay dapat tumakbo kasama ang utos.
  • - Ang pangalan ay nagbibigay sa aming lalagyan ng pangalan ng tao na nababasa.
  • -p nagtuturo sa Docker kung anong mga port ang gagamitin.
  • 80:80 - Ang unang 80 ay ang panlabas na port (gaya ng ginagamit sa iyong network) at ang pangalawang 80 ay ang panloob na port (gaya ng ginagamit ng Docker).
  • Nginx ay ang imahe na gagamitin para sa lalagyan.

Pagkatapos mong i-deploy ang lalagyan na iyon, dapat mong ituro ang isang browser sa http: // SERVER_IP (kung saan ang IP ng IP ay ang IP address ng server hosting Docker) at tingnan ang NGINX welcome page. Mapapansin mo rin na hindi mo makuha ang iyong command prompt pabalik. Bakit? Pinatakbo namin ang command sa naka-attach na mode. Kung pindutin mo ang Ctrl + c key na kumbinasyon, ang lalagyan ay papatayin at magkakaroon ka ng iyong prompt likod. Kung nais mong panatilihin ang lalagyan na tumatakbo, at makuha ang iyong prompt likod, dapat mong i-deploy ang lalagyan sa hiwalay na mode, tulad nito:

docker run --name docker-nginx -p 80:80 -d nginx

Gayunpaman, dahil na-deploy na namin ang unang lalagyan, makikita mo ang isang error. Upang maiwasan ito, kailangan naming ihinto ang unang lalagyan gamit ang docker stop utos. Upang magawa ito, dapat mong pansinin ang pangalan ng lalagyan (mai-print ito sa error), na isang mahabang string ng mga random na character. Upang patakbuhin ang command na ito, kailangan mo lamang gamitin ang unang apat na mga character ng lalagyan, tulad nito:

docker stop f149

Susunod na kailangan nating alisin ang lalagyan gamit ang command:

docker rm f149

Ang orihinal na lalagyan ay tumigil na ngayon at naalis na. Pagkatapos ay maaari mong muling i-deploy ang lalagyan ng NGINX sa hiwalay na mode.