‫Che dire dei segreti per lo sviluppo locale usando la linea di comando di Docker Compose. Abbiamo parlato di Swarm fino
‫ad ora.
‫Ma sono tornato sulla mia macchina, e ho installato Docker Compose che non avevo nel mio sciame,
‫giusto?
‫Perché ancora, Compose non è uno strumento di produzione.
‫È progettato per lo sviluppo.
‫Sono nella stessa directory di esempio segreta che avevamo prima.
‫Puoi vedere che ho i due file password e il file Docker Compose che avevamo nello sciame. dirà che questo non è un gestore di sciami.
‫Solo per dimostrare che non
‫sono in uno sciame, posso
‫fare un nodo docker ls, e in realtà mi
‫Non sono in uno sciame, quindi non ho accesso al database di Swarm o alla possibilità di inserire segreti.
‫Quindi, come affrontiamo questo nello sviluppo locale?
‫Idealmente, possiamo ancora utilizzare lo stesso file Compose.
‫Possiamo ancora usare gli stessi oggetti come le variabili d'ambiente per postgres.
‫Docker ha dovuto trovare un modo per farlo funzionare in test e sviluppo.
‫Se facciamo una finestra mobile componi
‫up -d, e poi facciamo una finestra mobile componi exec psql. Poi ha fatto un gatto per eseguire segreti utente di psql,
‫come ha fatto il nostro segreto entrare lì, giusto?
‫Perché non abbiamo il database.
‫Bene, si scopre che qui c'è un po 'di magia.
‫Beh, non è magico Si nasconde dietro le quinte, ciò che sta
‫realmente accadendo con Compose non è sicuro, ma funziona.
‫Fondamentalmente lega mounts in fase di esecuzione che il file reale sul mio disco rigido nel contenitore.
‫In realtà fa solo un -v con quel particolare file in background.
‫Di nuovo, questo non è assolutamente sicuro e non dovrebbe essere.
‫È solo un modo per aggirare questo problema e permetterci di sviluppare con
‫lo stesso processo e le stesse informazioni segrete variabili che avremmo nella
‫produzione, solo ora possiamo farlo anche localmente. Il che è fantastico perché ora ciò significa che possiamo sviluppare utilizzando gli stessi script
‫di lancio e allo stesso modo in cui otteniamo le variabili di ambiente nel nostro contenitore proprio come faremmo in Swarm.
‫Ed è quello che vogliamo veramente.
‫Vogliamo abbinare il nostro ambiente di produzione il più possibile a livello locale.
‫Hai bisogno dell'ultima versione di Docker Compose per farlo.
‫Credo che funzioni solo in Docker Compose 11.
‫Spero che tu pensi che sia abbastanza bello perché ho pensato che fosse un buon
‫compromesso da fare per permetterci di usare i comandi segreti.
‫Ora farò notare che funziona solo con i segreti basati su file.
‫Non funzionerà con l'esterno di cui abbiamo parlato.
‫Se guardiamo al file Compose molto rapidamente, dovrei usare quelli basati su file per il mio sviluppo locale.
‫altra parte in cui potresti memorizzarli, che sono basta usare una password semplice per lo sviluppo.
‫Forse se stai usando esterni nella tua produzione, potresti dover avere un diverso file di Compose per lo sviluppo che avrebbe
‫qui l'attributo del file e specificare esempi, file fittizi nella stessa directory o da qualche