2015-08-13 29 views
6

Desidero utilizzare kubernetes come ambiente di sviluppo predefinito per il quale ho configurato il cluster localmente con la finestra mobile come spiegato nello official doc. Spingo il mio esempio ad un github repositorykubernetes volume hostPath

miei passi impostati dopo aver avuto un cluster kubernetes in esecuzione sono stati:

* cd cluster_config/app && docker build --tag=k8s_php_dev . && cd ../.. 
* kubectl -s http://127.0.0.1:8080 create -f cluster_config/app/app.rc.yml 
* kubectl -s http://127.0.0.1:8080 create -f cluster_config/app/app.services.yml 

I miei problemi deriva dal voglio mappare una directory locale come un volume dentro la mia applicazione pod così ho posso condividere dinamicamente i file in là tra il mio host locale e il pod, così posso sviluppare, cambiare i file; e aggiornare dinamicamente il servizio.

Uso un volume con un hostPath. Il pod, il controller di replica e il servizio sono stati creati correttamente ma il pod non condivide la directory e nemmeno il file sul supposto su mountPath.

Cosa sto facendo male?

Grazie

+0

Si consiglia di guardare in '/ var/log/kubelet' per vedere se ci fossero errori di montaggio. Ho ripetuto la configurazione sul mio cluster utilizzando app.rc.yaml (ma con un'immagine busybox) e potevo scrivere e leggere i file sia dall'interno del contenitore che dall'host. –

+0

dove è la directory di default per i registri di kubelet, non ho/var/log/kubelet sul mio host, ci sono i flag che devo impostare per quello? – bitgandtter

risposta

15

La questione era la definizione del volume, la proprietà hostPath.path dovrebbe tenere l'indirizzo assoluto della directory da montare.

Esempio:

hostPath: 
    path: /home/bitgandtter/Documents/development/php/k8s_devel_env 
+0

Felice di aver trovato la tua risposta! –