15 container Docker più popolari 
I contenitori più consigliati su Internet per te!
 
Se sei un tecnico, hai sicuramente sentito parlare di Docker, uno strumento per la spedizione e l’esecuzione di applicazioni . Con tutta l’attenzione che riceve al giorno d’oggi, sviluppatori e giganti della tecnologia come Google stanno costruendo servizi per supportarlo.

Indipendentemente dal fatto che tu abbia in mente un caso d’uso immediato per Docker, ecco un elenco compilato dei 15 contenitori Docker più popolari. 

1. Alpine Linux
È un’immagine minima basata su Alpine Linux con un indice di pacchetto. Ha una dimensione di soli 5 MB e si basa su musl libc e BusyBox. L’immagine ha accesso a un repository di pacchetti molto più completo rispetto ad altre immagini basate su BusyBox. Alpine Linux è un’ottima base di immagini per utilità e applicazioni di produzione.

 

2. BusyBox
Con dimensioni comprese tra 1 e 5 Mb su disco (a seconda della variante), BusyBox è un ottimo ingrediente per creare distribuzioni efficienti in termini di spazio. BusyBox combina molte utilità UNIX comuni in un unico piccolo eseguibile. Le utilità hanno meno opzioni rispetto a GNU con funzionalità complete; tuttavia, le opzioni incluse forniscono funzionalità e si comportano come le loro controparti GNU. Di conseguenza, BusyBox fornisce un ambiente abbastanza completo per qualsiasi sistema piccolo o embedded.

  

3. Nginx
Nginx è un server proxy inverso open source, un servizio di bilanciamento del carico e un server di origine. Funziona su Linux, varianti BSD, Mac OS X, Solaris, AIX, HP-UX e altre versioni *nix. Ha anche una porta proof-of-concept per Microsoft Windows. 

Se stai ancora determinando le tue esigenze, dovresti usare questo. È progettato per essere un contenitore usa e getta e la base per costruire altre immagini.

 

4. Ubuntu
Ubuntu è il sistema operativo più popolare al mondo su cloud pubblici e cloud OpenStack. Inoltre, la piattaforma container può far funzionare i tuoi container su larga scala in modo rapido e sicuro. 

Leggi di più su Ubuntu qui . 

5. Python
Python incorpora moduli, eccezioni, tipizzazione dinamica, tipi di dati di alto livello e classi. Funziona anche come linguaggio di estensione per le applicazioni che necessitano di un’interfaccia programmabile. È portatile e funziona su molte varianti Unix, inclusi Mac, Windows 2000 e versioni successive. Per molti progetti semplici a file singolo, potresti aver bisogno di aiuto per scrivere un Dockerfile completo. In questi casi puoi eseguire uno script Python usando l’immagine Python Docker. 

 

6. PostGreSQL
PostgreSQL, spesso chiamato “Postgres”, gestisce lavori che vanno dalle applicazioni su una singola macchina alle applicazioni con connessione a Internet con più utenti. L’immagine utilizza molte variabili d’ambiente, che sono facili da perdere. L’unica variabile richiesta è POSTGRES_PASSWORD; il resto è facoltativo.

Nota : le variabili specifiche di Docker avranno effetto solo se avvii il contenitore con una directory di dati vuota; qualsiasi database preesistente verrà lasciato inalterato all’avvio del contenitore.

Leggi di più su PostGres qui . 

7. Redis
Redis è un archivio dati in rete open source con durabilità opzionale. 

Per un facile accesso tramite rete Docker, la “Modalità protetta” è disattivata per impostazione predefinita. Quindi, se esponi la porta al di fuori del tuo host (ad esempio, tramite -p durante l’esecuzione della finestra mobile), sarà accessibile a chiunque non abbia una password. Pertanto, si consiglia vivamente di impostare una password (fornendo un file di configurazione).

  

8. Apache httpd
Apache è un’applicazione server Web che ha svolto un ruolo fondamentale nella crescita iniziale di Internet. Questa immagine contiene solo Apache httpd con le impostazioni predefinite da upstream. Non è installato PHP, ma dovrebbe essere facile da estendere. D’altra parte, se vuoi PHP con Apache httpd, guarda l’ immagine PHP e guarda i tag -apache. 

Per eseguire un server HTML, aggiungi un Dockerfile al progetto dove public-HTML/ è la directory che contiene tutto l’HTML.

Leggi di più su Apache httpd qui. 

9. Node
Node.js è una piattaforma per applicazioni lato server e di rete. Le applicazioni scritte in Javascript possono essere eseguite all’interno del runtime Node.js su Mac OS X, Windows e Linux senza modifiche. Node.js contiene una libreria I/O asincrona integrata per la comunicazione di file, socket e HTTP. Il supporto HTTP e socket consente a Node.js di fungere da server Web senza software aggiuntivo come Apache.

Leggi di più su Node.js qui.

10. MongoDB
MongoDB è un programma di database open source che utilizza documenti simili a JSON con schemi. Il server MongoDB nell’immagine funziona sulla porta MongoDB standard, 27017, collegandosi tramite reti Docker, rimanendo lo stesso di un mongod remoto.

Leggi di più su MongoDB qui.

11. MySQL
MySQL è diventato un database leader per le applicazioni basate sul Web, che copre l’intera gamma di progetti personali e siti Web.

Avviare un’istanza MySQL è semplice:

$ docker run –name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

 

12. Memcached
Memcached è un sistema di memorizzazione nella cache di memoria distribuito. Le sue API forniscono una grande tabella hash su diverse macchine. I dati meno recenti vengono eliminati nell’ordine utilizzato meno di recente quando la tabella è piena. Le applicazioni memorizzate di solito mettono a strati le richieste e le aggiunte nella RAM prima di ritirarsi su un archivio di supporto più lento.

 

13. Traefik
Traefik è un proxy inverso HTTP e un servizio di bilanciamento del carico per distribuire facilmente microservizi. Si integra automaticamente con l’infrastruttura Docker esistente e si configura dinamicamente. Puntare Traefik al tuo orchestratore dovrebbe essere l’unico passaggio di configurazione.

Leggi di più su Traefik qui.

14. MariaDB
MariaDB Server è un popolare server di database open source creato da sviluppatori MySQL. Avviare un’istanza MariaDB con l’ultima versione è semplice:

$ docker run –detach –name some-mariadb –env MARIADB_USER=user-example –env MARIADB_PASSWORD=my_cool_secret –env MARIADB_ROOT_PASSWORD=my-secret-pw mariadb:latest
oppure:
$ docker network create some-network 

$ docker run –detach –network qualche-rete –nome qualche-mariadb –env MARIADB_USER=utente-esempio –env MA

 

15. RabbitMQ 
RabbitMQ è un software broker di messaggi open source che implementa l’Advanced Message Queuing Protocol. Memorizza i dati in base al “Node Name”, che per impostazione predefinita è il nome host. Per l’utilizzo in Docker, dovremmo specificare -h/–hostname esplicitamente per ogni demone in modo che l’utente non ottenga un nome host casuale e possa tenere traccia dei dati.

Di ihal