Onion Information
Kontejnerizacija web aplikacija - GASERI
Kontejnerizacija web aplikacija - doc. dr. sc. Vedran Miletić, vmiletic@inf.uniri.hr , vedran.miletic.net - Fakultet informatike i digitalnih tehnologija Sveučilišta u Rijeci, akademska 2021./2022. godina - Kontejnerizacija - Prema Wikipedi...
Onion Details
Page Clicks: 0
First Seen: 03/15/2024
Last Indexed: 10/23/2024
Onion Content
Preskoči na sadržaj Kontejnerizacija web aplikacija doc. dr. sc. Vedran Miletić, vmiletic@inf.uniri.hr , vedran.miletic.net Fakultet informatike i digitalnih tehnologija Sveučilišta u Rijeci, akademska 2021./2022. godina Kontejnerizacija Prema Wikipediji : virtualizacija na razini operacijskog sustava (engl. OS-level virtualization ) je paradigma operacijskog sustava u kojoj jezgra omogućuje postojanje više izoliranih instanci korisničkog prostora s gledišta programa koji se u njima izvode mogu izgledati kao prava računala računalni program pokrenut na uobičajenom operativnom sustavu može vidjeti sve resurse (povezane uređaje, datoteke i mape, mrežne dionice, snagu procesora, mjerljive hardverske mogućnosti) tog računala programi koji se izvode u kontejneru mogu vidjeti samo sadržaj i uređaje dodijeljene kontejneru Kontejnerizacijske tehnologije kontejneri (engl. containers ) ( LXC , Docker ) zone (engl. zones ) ( Solaris / illumos ) virtualni privatni poslužitelji (engl. virtual private servers ) ( OpenVZ ) particije (engl. partitions ) virtualna okruženja (engl. virtual enviroments ) ( virtualenv ) virtualne jezgre (engl. virtual kernels ) ( DragonFly BSD ) zatvori (engl. jails ) ( FreeBSD , chroot jail pod Linuxom) Docker Prema Wikipediji : skup proizvoda platforme kao usluge (PaaS) koji koriste virtualizaciju na razini OS-a za isporuku softvera u kontejnerima kontejneri su međusobno izolirani i donose vlastiti softver, knjižnice i konfiguracijske datoteke; mogu međusobno komunicirati kroz precizno definirane kanale svi kontejneri dijele usluge jedne jezgra OS-a pa koriste manje resursa od virtualnih strojeva Primjeri Docker kontejnera Svi navedeni su službeno podržane slike dostupne na Docker Hubu : Ubuntu Node.js Python MongoDB PyPy Memcached Redmine PostgreSQL Elasticsearch Rust Kompozicije kontejnera Docker Compose omogućuje konfiguriranje i pokretanje grupe kontejnera, njihovo međusobno povezivanje mrežom itd. Primjerice, možemo komponirati: Web poslužitelj Interpreter skriptnog jezika Balanser opterećenja Sustav za upravljanje (relacijskom) bazom podataka Sustav za predmemeoriju Primjer kompozicije kontejnera FROM python:3.10-alpine WORKDIR /code ENV FLASK_APP = app.py ENV FLASK_RUN_HOST = 0 .0.0.0 RUN apk add --no-cache gcc musl-dev linux-headers COPY requirements.txt RUN pip install -r requirements.txt EXPOSE 5000 COPY . CMD [ "flask" , "run" ] services : web : build : . ports : "5000:5000" redis : image : "redis:alpine" Author: Vedran Miletić