GNU/Linux >> Linux Esercitazione >  >> Panels >> Docker

Come configurare un container Docker Apache

Se non conosci Docker e i container, la configurazione di Apache Docker Container è un ottimo modo per iniziare. La creazione di un'applicazione su Docker è un enorme vantaggio grazie alla sua tecnologia leggera e alla sicurezza.

In questo tutorial imparerai come configurare un Apache Docker Container su Ubuntu. Usa questo tutorial per imparare a iniziare con Docker e ottenere anche un server web Apache!

Prerequisiti

Se desideri seguire passo dopo passo, assicurati di avere la macchina seguente e Ubuntu 14.04.4 LTS o successiva con Docker installato in questo tutorial. Questo tutorial utilizza Ubuntu 18.04.5 LTS con Docker v19.03.8 e un indirizzo IP pubblico di 13.213.48.113.

Configurazione dell'Apache Docker Container

Supponendo che tu abbia già installato Docker, configuriamo prima il container Apache. In seguito imparerai come avviarlo.

Uno dei modi più semplici per visualizzare rapidamente un container Apache Docker è scaricare un'immagine del container esistente dall'hub Docker del registro Docker ufficiale. Per questo esempio, scaricherai ed eseguirai un container Docker chiamato Apache.

Con pochi comandi Docker, eseguirai un'istanza di Apache in pochissimo tempo. Per farlo, segui i passaggi seguenti.

Nota:questo tutorial non tratta in modo approfondito l'esecuzione dei comandi Docker. Per ulteriori informazioni sui comandi Docker, visita la pagina della documentazione della riga di comando di Docker.

1. Apri un terminale sulla tua macchina Ubuntu.

2. Scarica l'immagine Docker, che contiene Apache chiamato httpd , eseguendo il docker pull comando qui sotto. Questo comando scaricherà o estrarrà l'immagine Apache dal registro Docker, come mostrato di seguito.

# Pulls the Docker Images from docker registry to your local machine.
docker pull httpd

Lo screenshot seguente mostra il risultato atteso quando si estrae l'immagine da Docker Hub.

3. Successivamente, conferma di aver scaricato l'immagine eseguendo docker images comando qui sotto per elencare tutte le immagini disponibili sul tuo computer.

# To check the docker images
docker images

Come puoi vedere di seguito, ora hai un'immagine Docker, che è l'immagine che hai scaricato da Docker Hub.

Eseguire Apache Container utilizzando Docker Command.

Nella sezione precedente, hai scaricato l'immagine Docker dall'hub Docker. Ora sei pronto per creare un contenitore da quell'immagine. Per eseguire il container Apache, dovrai eseguire il comando Docker come segue:

1. Richiamare docker run comando per creare un nuovo contenitore basato sull'immagine Docker di Apache scaricata.

# Run a new docker container called docker-apache (--name)
# Map the local computer's port 80 to the container's port 80 (-p 80:80)
# In detached mode (-d)
# Using the Apache image
docker run -d --name docker-apache -p 80:80 -d httpd

La docker run il comando restituisce quindi l'ID contenitore univoco del contenitore appena creato. Salva questo ID contenitore nella casella evidenziata di seguito in futuro se desideri eliminare o rimuovere il contenitore.

2. Una volta che il container Apache è in esecuzione, verifica se puoi accedere all'interfaccia web di Apache navigando su Public-Ip-address:80 utilizzando il tuo browser web. Se riesci a visualizzare lo stesso messaggio, come puoi vedere di seguito, hai avviato correttamente il tuo container Apache Docker.

Assicurati che Ubuntu 14.04.4 LTS Machine abbia una porta in entrata Port 80 consentita nel gruppo di sicurezza.

3. Infine, arresta il contenitore se non è più necessario eseguirlo eseguendo docker stop comando qui sotto. Questo comando arresterà senza problemi l'istanza del contenitore.

# Stop the container with ID aaaee64a4512 Make sure to change the container ID value to yours.
# Note: specifying the first 12 characters of the container ID is enough.
docker stop aaaee64a4512

In alternativa, puoi anche fermare un container in esecuzione specificandone il nome nella docker stop comando ( docker stop docker-apache ).

Esecuzione di Apache Docker Container dal file Docker

Nella sezione precedente, hai appreso come avviare un container Apache Docker eseguendo l'immagine Docker httpd predefinita. Cosa succede se devi aggiornare l'immagine di base per visualizzare contenuti diversi o esporli su una porta diversa?

La distribuzione di un contenitore utilizzando il file Docker ti consente di rimuovere il passaggio di creazione manuale dell'immagine quando stai testando la stessa configurazione su un sistema operativo diverso. L'approccio ai file Docker è uno script automatizzato di immagini Docker.

Creiamo un file Docker ed eseguiamo un container da esso.

1. Crea una cartella denominata ~/apache-server-docker-demo, quindi cambia (cd ) la directory di lavoro in quella cartella.

mkdir ~/apache-server-docker-demo
cd ~/apache-server-docker-demo

2. Crea un altro file, copia/incolla la configurazione seguente e salva il file come index.html all'interno della ~/apache-server-docker-demo directory. L'indice.html file è una pagina HTML che visualizzerà Questo tutorial insegnerà come eseguire il container Apache nella finestra mobile una volta avviato il contenitore che vedrai più avanti nel corso.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>This tutorial will teach how to Run Apache container in docker .</title>
</head>
<body>
    <h1>This tutorial will teach how to Run Apache container in docker , lets GO!</h1>
</body>
</html>

3. Crea un altro file, copia/incolla la configurazione seguente e salva il file come file Docker all'interno della ~/apache-server-docker-demo directory. Al termine, Docker utilizzerà questo DockerFile per eseguire tutti i comandi necessari per creare una nuova immagine Docker sopra qualsiasi immagine di base.

Il File Docker di seguito contiene vari passaggi/istruzioni che costruiranno il container Apache:

  • Maintainer Le istruzioni del gestore forniscono informazioni sull'autore che gestisce questo file.
  • FROM L'istruzione FROM inizializza una nuova fase di compilazione e imposta l'immagine di base per le istruzioni successive. Nello snippet di codice sottostante, centos:7 è l'immagine di base.
  • COPY Il comando COPY copia un file dalla macchina host (host Docker) al contenitore. ****indice.html che hai creato in precedenza sull'host Docker verrà copiato nei contenitori /var/www/html directory.
  • EXPOSE – L'istruzione EXPOSE informa Docker che il contenitore è in ascolto sulle porte di rete specificate in fase di esecuzione. Il server web Apache è esposto per impostazione predefinita su Port 80 .
# Instruction for Dockerfile to create a new image on top of the base image (httpd)
FROM httpd:2.4
MAINTAINER [email protected]
COPY index.html /var/www/html/
EXPOSE 80

4. Successivamente, verifica tutti i file richiesti di seguito nella cartella eseguendo la tree comando.

5. Quindi, crea l'immagine eseguendo docker build comando. Il t flag è usato per taggare l'immagine apache-server con v1 e. indica la directory di lavoro attuale.

# Building the docker Image
sudo docker build  -t apache-server:v1 .

Quando Docker viene eseguito, restituisce vari attributi. Vedrai che uno di questi attributi è REPOSITORY. Il nome del REPOSITORY è apache-server e l'immagine è contrassegnata con la versione v1 , come mostrato di seguito.

6. Infine, esegui il contenitore Apache utilizzando l'immagine appena creata eseguendo docker run comando.

Il p flag pubblica le porte di un container sull'host, che è 80:80 . Il -it flag indica a Docker di allocare uno pseudo-terminale connesso allo stdin del contenitore.

# Running the Apache container using the newly built image
docker run -it -p 80:80 apache-server:v1

7. Infine, verifica se puoi accedere all'interfaccia web di Apache navigando su Public-ip-address:80 utilizzando il tuo browser web. Vedrai questo messaggio sull'interfaccia web perché hai creato il file index.html e Docker lo ha copiato nel contenitore all'avvio.

Conclusione

Questo tutorial mirava ad aiutarti nel processo di configurazione di un container Apache Docker utilizzando le immagini Docker. Hai imparato come avviare i container Apache utilizzando i file Docker, con i quali puoi modificare e creare container personalizzati a tua scelta.

Quindi cosa costruirai sull'immagine Docker del server Apache?


Docker
  1. Come installare WordPress utilizzando Docker

  2. Come configurare vHost in Apache

  3. Come eseguire un programma all'interno di un contenitore Docker?

  4. Come eseguire MySQL in un contenitore Docker

  5. Come SSH in un contenitore Docker

Come archiviare i dati del contenitore Docker nei volumi Docker

Come installare Docker su Debian 11

Come eseguire PHPMyAdmin in un contenitore Docker

Come eseguire Grafana in un contenitore Docker

Come impostare Pihole in un contenitore Docker

Come eseguire i contenitori Docker