Executando o Docker no ambiente Windows / cygwin

5

Não tenho certeza se essa é a comunidade certa para perguntar sobre meu problema, pois estou realmente tentando lançar docker em cygwin environment em windows . Após a instalação do Docker Toolbox, estou tentando iniciar o docker version no meu shell cygwin e obtendo:

$ docker version
Could not read CA certificate "\cygdrive\c\Users\Alexey\.docker\machine\machines\default\ca.pem": open \cygdrive\c\Users\Alexey\.docker\machine\machines\default\ca.pem: The system cannot find the path specified.

No entanto, o arquivo real /cygdrive/c/Users/Alexey/.docker/machine/machines/default/ca.pem está lá, o problema parece estar em barras erradas (windows vs UNIX) no caminho para o arquivo de certificado. Mas não consigo descobrir onde consertar isso.

Aqui estão as variáveis env definidas em ~ / .bash_profile:

export DOCKER_HOST=tcp://192.168.99.100:2376
export DOCKER_MACHINE_NAME=default
export DOCKER_TLS_VERIFY=1
export DOCKER_CERT_PATH=/cygdrive/c/Users/Alexey/.docker/machine/machines/default
export TERM=cygwin

UPDATE

Alexey@Alexey-PC ~
$ echo $DOCKER_CERT_PATH
/cygdrive/c/Users/Alexey/.docker/machine/machines/default/

Alexey@Alexey-PC ~
$ docker version
Could not read CA certificate "\cygdrive\c\Users\Alexey\.docker\machine\machines\default\ca.pem": open \cygdrive\c\Users\Alexey\.docker\machine\machines\default\ca.pem: The system cannot find the path specified.

SOLUÇÃO como proposto abaixo por @cloverhap precisamos definir a variável de ambiente DOCKER_CERT_PATH , mas ela deve conter o caminho do windows, não o cygwin e, além disso, as barras invertidas devem ter escape, então a solução é adicione isto:

export DOCKER_CERT_PATH=C:\Users\%USERNAME%\.docker\machine\machines\default

para .bash_profile

    
por Alexey 14.02.2016 / 22:56

2 respostas

6

No meu ambiente cygwin, o caminho do docker cert está definido como abaixo e a janela de encaixe parece funcionar bem.

DOCKER_CERT_PATH=C:\Users\user\.docker\machine\machines\default

O seguinte, de fato, dá um erro

DOCKER_CERT_PATH=/cygdrive/c/Users/user/.docker/machine/machines/default
$ docker version
Could not read CA certificate "\cygdrive\c\Users\user\.docker\machine\machines\default\ca.pem": open \cygdrive\c\Users\user\.docker\machine\machines\default\ca.pem: The system cannot find the path specified.

Portanto, tente alterar o seu DOCKER_CERT_PATH para o formato de caminho normal do Windows.

export DOCKER_CERT_PATH=C:\Users\Alexey\.docker\machine\machines\default

Minha versão do docker é 1.10.1, se os resultados forem diferentes.

    
por 17.02.2016 / 22:53
0

Eu tive o mesmo problema, então percebi que quando eu instalei o docker no meu sistema Windows 10, um programa chamado "Docker Quickstart Terminal" foi instalado. Se você executar isso se der um bash shell e puder executar o comando docker nesse terminal. Pode não ser a festa do Cygwin, mas e daí?

Issolançaisso…

    
por 22.09.2018 / 06:23