Estoy intentando configurar un entorno de compilación local para Solidity en Windows (10).
Una de las opciones recomendadas en los documentos de Solidity es docker.
Superficialmente, la imagen de la ventana acoplable funciona bien:
C:\work\eth>docker run ethereum/solc:stable --version
solc, the solidity compiler commandline interface
Version: 0.4.11+commit.68ef5810.Linux.g++
Pero, no está logrando acceder a ningún archivo.
C:\work\eth>docker run ethereum/solc:stable Coin.sol
Skipping non-existent input file ""Coin.sol""
C:\work\eth>dir Coin.sol
Directory of C:\work\eth
05/22/2017 02:55 PM 873 Coin.sol
1 File(s) 873 bytes
0 Dir(s) 263,229,722,624 bytes free
¿Es esto un problema de la ventana acoplable? ¿Un problema con la imagen de solc? ¿Cómo debo proceder?
Docker no conoce su sistema de archivos local de forma predeterminada.
Debe vincular su directorio local como un volumen de datos. ( https://docs.docker.com/engine/tutorials/dockervolumes/#mount-a-host-directory-as-a-data-volume )
En su caso, creo que el comando que está buscando es:
docker run -v c:\work\eth:c:\solidity ethereum/solc:stable Coin.sol
Si desea verificar si Docker puede ver su archivo local, estos dos comandos deberían ayudar:
docker run --entrypoint /bin/pwd -v c:\work\eth:c:\solidity ethereum/solc:stable
docker run --entrypoint /bin/ls -v c:\work\eth:c:\solidity ethereum/solc:stable
(No soy un usuario de Windows y no los he probado en Windows)
Frederic Hubin