Cum să vă construiți propria imagine Docker pe Linux

Ți-ai dorit vreodată să-ți creezi propria imagine Docker ? După cum se dovedește, cu ceva numit „Dockerfile”, puteți. În acest ghid, vom analiza cum să vă construiți propria imagine Docker.

Cum se instalează Docker pe Linux

Va trebui să aveți Docker instalat pe serverul dvs. Linux înainte de a încerca să construiți o nouă imagine. Din fericire, docker este ușor de instalat pe o mare varietate de sisteme de operare Linux. În acest ghid, ne vom concentra pe Ubuntu, Debian , Arch Linux, Fedora și OpenSUSE .

Pentru a instala Docker, deschideți un terminal. Odată ce este deschis, instalarea este gata să înceapă. Urmați instrucțiunile de instalare prezentate mai jos, care se potrivesc cu sistemul de operare Linux pe care îl utilizați.

Ubuntu/Debian

Mai întâi va trebui să actualizați indexul software pe sistemul dumneavoastră Ubuntu/Debian. Pentru a face asta, rulați comanda apt update de mai jos.

actualizare sudo apt

Acum trebuie să instalați pachetul de transport HTTPS pentru a instala prin HTTPS. De asemenea, va trebui să instalați Curl și alte câteva pachete. Aceste pachete pot fi instalate cu comanda apt install .

sudo apt install apt-transport-https ca-certificates curl software-properties-common

Cu pachetele instalate, este timpul să activați cheia Docker GPG pe sistemul dumneavoastră Ubuntu/Debian. Această cheie asigură că este sigur să instalați pachete pe Ubuntu.

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Cu cheia GPG activată, este timpul să activați repo Docker. Pentru a face acest lucru, executați următoarea comandă echo într-un terminal.

echo „deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

După ce ați activat depozitul Docker, rulați din nou comanda apt update pentru a reîmprospăta indexul software.

actualizare sudo apt

În cele din urmă, puteți instala pachetele Docker de care aveți nevoie pe Ubuntu sau Debian.

sudo apt install docker-ce docker-ce-cli containerd.io

Arch Linux

Dacă utilizați Arch Linux, puteți pur și simplu să rulați comanda pacman -S și să instalați pachetul „docker” pentru ca Docker să funcționeze pe sistemul dumneavoastră.

sudo pacman -S docker

Cu pachetul Docker instalat pe sistemul dvs. Arch, rulați următoarele comenzi systemctl pentru a activa software-ul.

sudo systemctl activați docker sudo systemctl porniți docker

Fedora

A face Docker să lucreze pe Fedora este destul de simplu. Pentru a începe, utilizați comanda dnf install pentru a instala software-ul pe sistemul dvs.

sudo dnf install docker

Odată ce pachetul este instalat pe sistemul dvs. Fedora, activați-l cu systemd.

sudo systemctl activați docker sudo systemctl porniți docker

OpenSUSE

Pentru ca Docker să funcționeze pe OpenSUSE, trebuie să adăugați depozitul Docker.

sudo zypper adrepo https://download.docker.com/linux/opensuse/$(awk -F= '/^VERSION_ID/{print $2}' /etc/os-release)/x86_64/stable docker

Apoi, reîmprospătați Zypper și instalați software-ul.

sudo zypper refresh

sudo zypper install docker-ce

În cele din urmă, activați Docker pe sistemul dvs. cu systemd.

sudo systemctl activați docker sudo systemctl porniți docker

Cum să alegi imaginea de bază

Fiecare imagine Docker luată din DockerHub este construită cu o imagine de bază. Deci, va trebui să alegeți o imagine de bază pentru containerul dvs. Docker. În acest ghid, vom folosi Ubuntu, deoarece este unul dintre cele mai compatibile sisteme de operare Linux.

În acest ghid, vă vom arăta un exemplu despre cum să construiți o imagine Drupal 10 cu Ubuntu 22.04. Cu toate acestea, aceste instrucțiuni de construire se pot aplica la orice doriți să creați, de la aplicații web la programe Python etc.

Pentru a începe, deschideți editorul de text Nano într-un terminal. Veți folosi Nano pentru a vă crea propriul fișier Dockerfile.

nano -w ~/dockerfile

În editorul de text Nano, introduceți următorul cod pentru a specifica că doriți să utilizați Ubuntu. Pentru a obține Ubuntu 22.04, specificați-l. Dacă doriți să utilizați o versiune diferită a Ubuntu, informațiile pot fi găsite aici .

# Use the official Ubuntu base image
FROM ubuntu:22.04

Cum se configurează directorul de lucru

Trebuie să configurați un director de lucru în containerul Docker. Directorul de lucru este locul în care aplicația este implementată pe Ubuntu în container. În acest exemplu, vom lucra cu Drupal 10. Drupal este o aplicație web, așa că va trebui să setăm WORKDIR ca /var/www/html/.

În editorul de text Nano, apăsați tasta Enter pentru a crea un spațiu. Apoi, lipiți următorul cod.

# Set the working directory in the container WORKDIR /var/www/html

Cum se instalează dependențele programului

Aplicația pe care o implementați în imaginea dvs. Docker trebuie să aibă dependențe îndeplinite. Dacă dependențele corecte nu sunt instalate în imagine, aceasta nu va funcționa. Creăm o imagine Drupal 10 bazată pe Ubuntu 22.04, așa că trebuie să adăugăm toate dependențele Drupal 10 la fișier.

În editorul de text Nano, apăsați tasta Enter pentru a crea un spațiu. Apoi, lipiți următorul cod.

# Install dependencies RUN apt-get update && apt-get install -y \ apache2 \ php \ libapache2-mod-php \ php-curl \ php-gd \ php-intl \ php-mbstring \ php-mysql \ php-pgsql \ php-xml \ php-zip \ unzip

Cum să copiați codul programului

Următorul pas al procesului este să furnizați fișierului dvs. Docker codul programului. Încă o dată, folosim Drupal 10 ca exemplu. Deci, trebuie să oferim Dockerfile mijloacele pentru a descărca și extrage Drupal 10.

În editorul de text Nano, apăsați tasta Enter pentru a crea o nouă linie. Apoi, adăugați următorul cod, astfel încât Dockerfile să poată descărca Drupal 10.

# Download and install Drupal RUN wget https://ftp.drupal.org/files/projects/drupal-10.2.tar.gz && \ tar -xvf drupal-10.2.tar.gz && \ mv drupal-10.2 .

Cum să expun porturile

De fiecare dată când implementați un container Docker, acesta accesează porturi. De exemplu, dacă rulați containerul implicit de sincronizare, acesta expune portul 8384. Nextcloud? Portul 8080 și 80. Containerul trebuie să expună porturile corecte pentru a funcționa corect.

Mai întâi, aflați la ce porturi are nevoie de acces programul pe care îl implementați. În acest exemplu, implementăm Drupal 10. Deoarece Drupal 10 este un sistem CMS pentru un server web, are nevoie de portul 80. Deci, în fișierul text Nano, expunem portul 80.

# Expose the Drupal port EXPOSE 80

Cum să setați comanda implicită

Trebuie să setați comanda implicită în fișierul Docker, astfel încât, atunci când imaginea este construită și implementată, să înceapă automat să ruleze programul. În exemplul nostru, dorim ca Drupal 10 să pornească instantaneu odată ce containerul este implementat, așa că trebuie să adăugăm o comandă de lansare la Dockerfile.

În editorul de text Nano, apăsați Enter pentru a crea un spațiu nou în fișier. Apoi, lipiți următorul cod.

# Start Apache in the foreground CMD ["apache2ctl", "-D", "FOREGROUND"]

După ce ați adăugat acest ultim bit de cod la fișier, salvați-l apăsând Ctrl + O și ieșiți din editorul de text Nano cu Ctrl + X . Dockerfile ar trebui să arate ca codul de mai jos.

Notă: acesta este un exemplu Dockerfile. Puteți folosi exemplul Drupal ca referință pentru a vă crea propria aplicație pentru orice aplicație doriți.

FROM ubuntu:22.04

# Set the working directory
WORKDIR /var/www/html

# Install dependencies
RUN apt-get update && apt-get install -y \
apache2 \
php \
libapache2-mod-php \
php-curl \
php-gd \
php-intl \
php-mbstring \
php-mysql \
php-pgsql \
php-xml \
php-zip \
unzip


# Download and install Drupal
RUN wget https://ftp.drupal.org/files/projects/drupal-10.2.tar.gz && \
tar -xvf drupal-10.2.tar.gz && \
mv drupal-10.2 .


# Expose the Drupal port
EXPOSE 80

# Start Apache in the foreground
CMD ["apache2ctl", "-D", "FOREGROUND"]

Cum se construiește imaginea

Pentru a crea noua imagine Docker cu fișierul Docker pe care l-ați creat, introduceți următoarea comandă de compilare a docker .

sudo docker build -t my-docker-image .

Comanda de mai sus vă va construi imaginea Docker.

Cum să implementați imaginea

Pentru a implementa noua imagine într-un container, trebuie să utilizați comanda docker run . De exemplu, pentru a rula noua imagine Drupal 10 Ubuntu pe portul 80, procedați în felul următor.

sudo docker run -d --name my-drupal-container -p 80:80 my-docker-image

Leave a Comment

Îmbunătățiți clipboardul Gnome Shell cu Pano

Îmbunătățiți clipboardul Gnome Shell cu Pano

Să recunoaștem, clipboardul implicit Gnome Shell nu este foarte bun. Instalați Pano pentru a vă îmbunătăți experiența în clipboard!

Cum se instalează DaVinci Resolve 17 pe Linux

Cum se instalează DaVinci Resolve 17 pe Linux

Ai nevoie de un editor video neliniar excelent pentru caseta ta Linux? Obțineți Davinci Resolve 17 lucrând cu acest ghid!

Cum să descărcați imagini de fundal pe desktopul Linux cu Wallpaper Downloader

Cum să descărcați imagini de fundal pe desktopul Linux cu Wallpaper Downloader

Wallpaper Downloader este un program de descărcare și manager de imagini de fundal Linux. Acceptă majoritatea mediilor desktop Linux și este foarte ușor de utilizat. Acest ghid

Cum se instalează Tuxedo OS pe computer

Cum se instalează Tuxedo OS pe computer

Doriți să testați computerele Tuxedo OS by Tuxedo? Aflați cum să obțineți cea mai recentă versiune a sistemului de operare Tuxedo care funcționează pe computer.

Cum se instalează un fișier DEB pe Linux

Cum se instalează un fișier DEB pe Linux

Ce este un fișier DEB? Ce faci cu asta? Aflați multe moduri prin care puteți instala fișiere DEB pe computerul dvs. Linux.

Cum să joci Dying Light pe Linux

Cum să joci Dying Light pe Linux

Dying Light este un joc video survival horror din 2015 dezvoltat de Techland și publicat de Warner Bros Interactive Entertainment. Jocul se concentrează pe

Cum se instalează Neptune Linux pe computer

Cum se instalează Neptune Linux pe computer

Neptune folosește mediul desktop KDE Plasma 5 și își propune să ofere un sistem de operare elegant. Iată cum să instalați Neptune Linux pe computer.

Încercați noul desktop bazat pe snap al Ubuntu

Încercați noul desktop bazat pe snap al Ubuntu

Doriți să încercați noul sistem de operare desktop bazat pe pachetul snap al Ubuntu? Aflați cum să o implementați pe o mașină virtuală cu acest ghid.

Cum să joci Undertale pe Linux

Cum să joci Undertale pe Linux

Undertale este un RPG indie 2d din 2015 dezvoltat și publicat de dezvoltatorul de jocuri Toby Fox. Acest ghid va acoperi descărcarea și instalarea Undertale pe dvs

Cum să joci Total War: THREE KINGDOMS pe Linux

Cum să joci Total War: THREE KINGDOMS pe Linux

Total War: Three Kingdoms este un joc RTS de strategie pe rând, dezvoltat de Creative Assembly. Iată cum să joci pe Linux.