2016-01-14 12 views
5

Sto utilizzando gcsfuse all'interno di un contenitore docker (immagine base centos7) e non sono in grado di leggere o scrivere nella directory montata.gcsfuse restituisce un errore di input/output durante la lettura o la scrittura nella directory caricata nella finestra mobile

sto montaggio la directory con gcsfuse come questo:

[[email protected] /]# gcsfuse --foreground --key-file=/src/gcloud_service_account.json my-bucket /gcloud/ 
Using mount point: /gcloud 
Opening GCS connection... 
Opening bucket... 
Mounting file system... 
File system has been successfully mounted. 

Quando provo e leggere o scrivere alla directory montata, ottengo questo errore:
[root @ 6c24c3a6cc28 /] # ls -la/gcloud/ ls: la lettura di directory/gcloud /: Input/output di errore totale 0

gcsfuse stampe su informazioni di debug dicendo:

fusibile: 2016/01/14 01: 33: 41.11026 0 * fuseops.ReadDirOp errore: readAllEntries: ReadEntries: ListObjects: Get https://www.googleapis.com/storage/v1/b/my-bucket/o? delimit =% 2F & proiezione = completo: la chiave privata deve essere PEM o PKSC1 o PKCS8 semplice; errore di analisi: asn1: errore di struttura: i tag non corrispondono (16 vs {class: 1 tag: 27 length: 123 isCompound: true}) {opzionale: false explicit: false application: false defaultValue: tag: stringType: 0 timeType: 0 set: false omitEmpty: false} pkcs1PrivateKey @ 2

sto facendo funzionare finestra mobile come questo: finestra mobile run -p 3000: 3000 \
--privileged \ --cap-aggiungere SYS_ADMIN \ --device/dev/fusibile \ --name gcsfuseTest \ gcsfuseImage

io non sono sicuro al 100% che cosa --cap-add SYS_ADMIN e --device/dev/fusibile prendermi. Li metto in base agli altri utenti che stanno montando utilizzando il fusibile sulla finestra mobile.

risposta

12

sono stato in grado di capire questo fuori accendendo alcuni flag di debug durante l'esecuzione di gcsfuse come questo:

gcsfuse --foreground --debug_gcs --debug_http --debug_fuse --debug_invariants --key-file=/src/gcloud_service_account.json dev-my-bucket /gcloud

Questo restituito un sacco di informazioni, insieme a questo:

"codice"

: 403, "message": "Accesso non configurato. L'API (Cloud Storage JSON API) non è abilitata per il progetto. Utilizza la Google Developers Console per aggiornare la configurazione."

Ho abilitato questa API nella Console di Google Devlopers, quindi dopo un paio di minuti, ha funzionato.

+0

Ho lo stesso errore iniziale ma non ho questo codice purtroppo. Grazie per avermi dato questo a testa alta per ulteriori informazioni di debug però! – lathomas64

Problemi correlati