Questo tutorial si concentrerà su come costruire un custom Mobile immagine in base Ubuntu con Apache installato il servizio. L’intero processo sarà automatico utilizzando un Dockerfile.

Mobile le immagini possono essere create automaticamente dal file di testo, denominato Dockerfiles. Un Pannello file contiene step-by-step ordinato di istruzioni o comandi utilizzati per creare e configurare una finestra Mobile di immagine.

Requisiti

Fondamentalmente, un Pannello file contiene varie istruzioni per costruire e configurare un contenitore specifico in base alle vostre esigenze. Le istruzioni seguenti sono i più utilizzati, alcuni dei quali obbligatori:

  1. FROM O = obbligatorio come la prima istruzione di un Pannello file. Indica la finestra Mobile per tirare l’immagine di base da cui si sta costruendo la nuova immagine. Utilizzare un tag per specificare l’esatta immagine che si sta creando:
Ex: FROM ubuntu:20.04
  1. MAINTAINER = Autore dell’immagine di generazione
  2. RUN = Questa istruzione può essere utilizzato su più righe ed esegue tutti i comandi dopo un Mobile immagine è stata creata.
  3. CMD = Eseguire qualsiasi comando quando la finestra Mobile immagine è iniziato. Utilizzare solo uno CMD istruzione Dockerfile.
  4. ENTRYPOINT = Come CMD ma utilizzato come comando principale per l’immagine.
  5. EXPOSE = Indica il contenitore per l’ascolto su porte di rete durante l’esecuzione. Il contenitore porte non sono raggiungibili da host per impostazione predefinita.
  6. ENV = Contenitore insieme di variabili di ambiente.
  7. ADD = Copia di risorse (file, directory o file da Url).

Passo 1: Creazione o la Scrittura Dockerfile Repository

1. Prima di tutto, creare un qualche tipo di Dockerfile repository in modo da poter riutilizzare i file in futuro per creare altre immagini. Fare una directory vuota da qualche parte in /var la partizione in cui si crea il file con le istruzioni che verranno utilizzati per costruire la nuova finestra Mobile di immagine.

# mkdir -p /var/docker/ubuntu/apache
# touch /var/docker/ubuntu/apache/Dockerfile
Creare Dockerfile Repository
Creare un Dockerfile Repository

2. A quel punto, iniziare a modificare il file con le seguenti istruzioni:

# vi /var/docker/ubuntu/apache/Dockerfile

 

Dokerfile estratto:

FROM ubuntu
MAINTAINER  your_name  <use[email protected]>
RUN apt-get -y install apache2
RUN echo “Hello Apache server on Ubuntu Docker” > /var/www/html/index.html
EXPOSE 80
CMD /usr/sbin/apache2ctl -D FOREGROUND
Dockerfile Repository
Dockerfile Repository

Ora, passiamo attraverso il file di istruzioni:

La prima linea ci dice che stiamo costruendo da un Ubuntu immagine. Se il tag non viene inviato, per dire 14:10 per esempio, l’ultima immagine Mobile Hub è utilizzato.

Sulla seconda riga, abbiamo aggiunto la nome e email il creatore di immagini. Prossimi due ESEGUIRE le linee saranno realizzate nel contenitore durante la creazione dell’immagine e installare Apache demone e echo testo in default di apache pagina web.

Il ESPORRE linea di istruire la finestra Mobile contenitore per l’ascolto sulla porta 80ma la porta non sarà disponibile al di fuori. L’ultima riga indica il contenitore per eseguire il servizio di Apache in primo piano dopo che il contenitore è iniziato.

3. L’ultima cosa che dobbiamo fare è iniziare a creare l’immagine eseguendo il seguente comando, che localmente creare una nuova finestra Mobile immagine con nome ubuntu-apache basato sul Dockerfile creato in precedenza, come mostrato in questo esempio:

# docker build -t ubuntu-apache /var/docker/ubuntu/apache/
Creare Immagine Mobile
Creare Immagine Mobile

4. Dopo che l’immagine è stata creata da Mobileè possibile elencare tutte le immagini disponibili e identificare la vostra immagine con il seguente comando:

# docker images
Elenco Di Tutti I Docker Immagini
Elenco Di Tutti I Docker Immagini

Passo 2: Eseguire il Contenitore e l’Accesso Apache da LAN

5. Per eseguire il contenitore in continuo (in background) e accedere al contenitore esposto servizi (porte) dall’host o un altro computer remoto in rete LAN, eseguire il seguente comando nel terminale host comandi:

# docker run -d -p 81:80 ubuntu-apache
Eseguire Mobile Contenitore Immagine
Eseguire Mobile Contenitore Immagine

Qui, il -d opzione esegue l’ ubuntu-apache contenitore in background (come un demone) e il -p opzione mappe contenitore porta 80 per il tuo localhost port 81. Al di fuori della LAN l’accesso al servizio di Apache può essere raggiunto attraverso la porta 81 solo.

Comando Netstat vi darà un’idea su ciò che le porte host è in ascolto.

Dopo che il contenitore è stato avviato, inoltre, è possibile eseguire docker ps comando per visualizzare lo stato di funzionamento contenitore.

6. La pagina web possono essere visualizzate sul vostro host dalla riga di comando utilizzando curl utilità contro la macchina Indirizzo IP localhost, o pannello interfaccia di rete sulla porta 81. IP di utilizzo della riga di comando per mostrare interfaccia di rete in indirizzi IP.

# ip addr               [List nework interfaces]
# curl ip-address:81    [System Docker IP Address]
# curl localhost:81     [Localhost]
Controllare il Pannello di Interfaccia di Rete e l'Indirizzo IP
Controllare il Pannello di Interfaccia di Rete e l’Indirizzo IP
Controllare La Finestra Mobile Apache Pagina Web
Controllare La Finestra Mobile Apache Pagina Web

7. Per visitare il contenitore pagina web dalla rete, aprire un browser in un luogo remoto e utilizzare il protocollo HTTP, l’Indirizzo IP della macchina in cui il contenitore è in esecuzione, seguito dalla porta 81, come illustrato nella seguente immagine.

http://ip-address:81
Controllare La Finestra Mobile Contenitore Apache Pagina
Controllare La Finestra Mobile Contenitore Apache Pagina

8. Per ottenere un all’interno dei quali processi sono in esecuzione all’interno del contenitore di emettere il seguente comando:

# docker ps
# docker top <name or ID of the container>
Il Controllo Di Gestione Mobile Processi
Il Controllo Di Gestione Mobile Processi

9. Per interrompere il contenitore problema docker stop il comando seguito dal contenitore ID o il nome.

# docker stop <name or ID of the container>
# docker ps

10. Nel caso In cui si desidera assegnare un nome descrittivo per il contenitore di utilizzare il --name opzione, come mostrato nel seguente esempio:

# docker run --name my-www -d -p 81:80 ubuntu-apache
# docker ps
Dare Finestra Mobile Contenitore Nome
Dare Finestra Mobile Contenitore Nome

Ora è possibile fare riferimento al contenitore per la manipolazione (start, stop, top, statistiche, ecc) solo utilizzando il nome assegnato.

# docker stats my-www
Monitor Mobile Contenitore Utilizzo
Monitor Mobile Contenitore Utilizzo

Passaggio 3: Creare un File di Configurazione di Sistema per Mobile Contenitore

11. Su CentOS/RHEL è possibile creare un systemd file di configurazione e gestione di contenitore, come si fa normalmente per altri locali di servizio.

Per esempio, creare un nuovo systemd file di nome, diciamo, apache-docker.service utilizzando il seguente comando:

# vi /etc/systemd/system/apache-docker.service

apache-mobile.servizio estratto del file:

[Unit]
Description=apache container
Requires=docker.service
After=docker.service

[Service]
Restart=always
ExecStart=/usr/bin/docker start -a my-www
ExecStop=/usr/bin/docker stop -t 2 my-www

[Install]
WantedBy=local.target

12. Dopo aver modificato il file, chiudere, ricaricare il systemd demone per riflettere le modifiche e avviare il contenitore eseguendo i seguenti comandi:

# systemctl daemon-reload
# systemctl start apache-docker.service
# systemctl status apache-docker.service

Questo era un semplice esempio di cosa si può fare con un semplice Dockerfile ma è possibile pre-build alcuni piuttosto sofisticate applicazioni che si possono sparare-up in pochi secondi con il minimo di risorse e impegno.

 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *