2015-06-22 14 views
6

Utilizzando Docker su CoreOS, Ho uno script che chiama:Exec non è supportato dal driver lxc: come aggirare questo?

docker exec ... 

Questo funziona bene su CoreOS, ma ho anche voglia di testarlo su CircleCI. Quando provo ad eseguire tale script su CircleCI, ottengo:

time="2015-06-22T01:14:51Z" level=fatal msg="Error response from daemon: Unsupported: Exec is not supported by the lxc driver" ./tests/run.sh returned exit code 1 

Here are the test results on CircleCI.

Ho provato a cambiare docker exec a docker --exec-driver native exec, tuttavia non sono del tutto sicuro di cosa sia un "driver", come cambiarlo o anche se è possibile o desiderabile farlo.

Quale sarebbe la migliore linea d'azione attorno a questo errore?

+0

Questo è ancora un problema. Se assolutamente hai bisogno di exec, Travis CI lo supporta. – alberto56

risposta

11

Un driver di esecuzione è ciò che la finestra mobile utilizza dietro la scena per eseguire effettivamente i contenitori. Ci sono due opzioni popolari: lxc (ex default), native (predefinito corrente)

assomiglia CircleCI non supporta native conducente esecuzione ancora, è per questo che manca di alcune delle caratteristiche di finestra mobile. Apparentemente ne sono a conoscenza e hanno proposto un workaround.

+0

Sì, ma questa soluzione alternativa non funziona con la finestra mobile 1.10 e successive, quindi non è possibile utilizzare la finestra mobile-comporre con i file della versione 2. –

1

Ho avuto un problema simile con la docker exec non funzionante. Ho provato il lavoro che usa lxc-attach, ma questo non ha funzionato molto bene. Sospetto che avrei potuto farlo funzionare con un po 'più di tempo.

Alla fine ho creato uno script bash personalizzato all'interno del contenitore che conteneva tutti i comandi necessari per l'esecuzione e utilizzava un normale comando di "finestra mobile".

Problemi correlati