Vídeo: [DevOps] Деплой за 50$. Заказы на фриланс #7 Ansible deploy, docker, python (De novembre 2024)
Docker és una plataforma de codi obert per construir, administrar i executar aplicacions en contenidors virtuals en servidors Linux. Aquests contenidors són espais virtuals creats amb virtualització del sistema operatiu dins del nucli de Linux on s'aïllen els recursos. Es diferencien dels serveis PaaS com Microsoft Azure o Amazon EC2, que ofereixen servidors virtuals anomenats instàncies de servidor. Penseu en Docker com una manera d’entregar instàncies d’usuaris en lloc seu.
A causa d'aquests contenidors aïllats, Docker permet als desenvolupadors i administradors del sistema lliurar aplicacions distribuïdes de rendiment ràpid, central i segur. Segons molts, el rendiment és encara més àgil i lleuger que amb servidors virtuals. El projecte de comunitat oberta està atraient aficionats de codi obert, així com a grans empreses tecnològiques com Red Hat, Microsoft i Rackspace, que han anunciat plans o que ja han desenvolupat algun tipus d'interoperabilitat entre Docker i les seves ofertes.
Els administradors del sistema, en particular aquells que van passar la majoria de les seves carreres gestionant infraestructures Windows de petita o mitjana mida, poden tenir problemes per entendre exactament què pot fer Docker per ells i els sistemes que gestionen. Així doncs, hem parlat amb un administrador del sistema experimentat, que també és un usuari entusiasta de Docker, Kelsey Hightower, un consultor que treballa amb diverses startups com CoreOS, que envia un producte basat en Docker.
PCMag: Com utilitzeu Docker i la vostra organització actualment?
Hightower: Docker està integrat al sistema operatiu i és el mètode principal per executar aplicacions. No hi ha cap gestor de paquets ni temps d'execució locals, ni Java, Python, Ruby ni Perl. Ajudem als proveïdors de plataformes com a servei a crear les seves ofertes basades en Docker. CoreOS proporciona eines addicionals per ajudar a gestionar contenidors Docker.
PCMag: Podeu proporcionar alguns casos d'ús del "món real" per a Docker?
Alt nivell: la majoria de les empreses utilitzen Docker com a reemplaçament d’envasos d’aplicacions complexes. Per exemple, si teniu una aplicació Java, necessitareu una JVM, i molt probablement un contenidor d’aplicacions, que requereix diferents versions de la JVM i Tomcat. Per simplificar les coses, Docker s'utilitza per crear un contenidor amb la versió adequada de dependències de Java, Tomcat i altres aplicacions. No hi ha més conflictes!
Docker s'utilitza per a proves automatitzades i CI (integració contínua). Els contenidors Linux (gestionats per Docker) són molt més ràpids per crear i llançar que els seus homòlegs VM. Ara, en els entorns de prova, estem llançant bases de dades, corredors de missatges i altres serveis de què depenen les nostres aplicacions abans d’executar proves d’integració. Això millora la qualitat de les proves ja que ara estem provant les coses reals.
Docker facilita la configuració d'entorns de desenvolupament similars a la producció. En un sol host Docker, els meus desenvolupadors poden fer esborrar fàcilment tots els components que s’executen en producció, inclosa una base de dades, servidors de memòria cau, etc. De forma similar a les proves amb Docker, la qualitat del desenvolupament millora a causa de l’accés a un entorn real on desenvolupar-se. La possibilitat de córrer molts contenidors en una sola màquina virtual, puc donar a cada desenvolupador el seu propi entorn.
PCMag: Quina opció creus que és la corba d’aprenentatge per als administradors de sistemes que no codifiquen o utilitzen molt la línia de comandaments?
Hightower: a un nivell elevat, si podeu iniciar i aturar un servei Windows o UNIX des de la línia d’ordres, aleshores en disposeu d’una base per començar a utilitzar Docker.
Però, encara cal aprofundir en Docker com a eina per construir i compartir contenidors Linux i per gestionar-los.
Consells i suggeriments
Hightower també va oferir uns quants indicis i consells per als administradors del sistema per començar a funcionar amb Docker:
Creació d'un contenidor Linux amb Docker:
Nivell d'habilitat: Intermedi. Hauria de tenir experiència en la creació de paquets de programari com ara RPM de Linux, MSI o paquets senzills d’aplicacions com ara fitxers zip i tar.
Consell: crear un contenidor Linux amb Docker és bastant senzill. Tot el que necessiteu és una configuració de Docker que funciona i un Dockerfile, que és un document de text que conté totes les ordres que normalment executaria manualment per crear una imatge Docker.
Gestió d'un contenidor Linux amb Docker:
Nivell d'habilitat: Principiant.
Consell: l'eina de la línia d'ordres Docker és la forma més popular de distribuir, iniciar i detenir els contenidors Linux. La majoria dels administradors de sistemes còmodes amb l'ús de la línia d'ordres no tindran cap problema en utilitzar la CLI de Docker. La gran captura aquí és que el dimoni Docker no s'executa de forma nativa a Windows o Mac OS X; és necessari un host Docker amb Linux. La majoria de la gent decideix executar l'amfitrió de Docker en una màquina virtual virtual mitjançant Boot2Docker o al núvol (amb EC2, Google Computer, etc.) Hightower va dir: "Personalment executo CoreOS a VMware Fusion al meu Mac. Estic en funcionament. en 5 minuts. Un cop l'amfitrió de Docker estigui al seu lloc, les eines Docker CLI funcionaran bé a Windows i Linux."
Hightower també aconsella que ara que el Docker 1.0 estigui fora, és probable que vegem més eines basades en la GUI disponibles. També recomana fer una ullada a Tutum.co, una solució Docker allotjada que facilita el treball amb contenidors Docker.