1

I'm trying to run parity on Docker. My workstation is Windows 10, but the Docker is intended for a Linux machine. Right now I'm having trouble running the Docker with --base-path option, as I keep getting the following error:

Client service error: Client(Database("IO error: directory: Invalid argument"))

This is the docker command I'm running:

docker run -v /d/parity/docker:/root/.local/share/io.parity.ethereum/ -p 8180:8180 -p 8545:8545 -p 8546:8546 -p 30303:30303 -p 30303:30303/udp parity/parity:v1.7.9 --unsafe-expose --base-path /root/.local/share/io.parity.ethereum/

Does anybody has an idea?

1

I'm also running docker on windows 10 and had very similar problem when using parity in docker with the help of this project:

https://github.com/paritytech/parity-deploy

This creates docker compose file and configuration files for you. After starting the container I got the same error. I suspect it has to do something with the differences in the file systems between the windows and linux.

Solved it by creating the volume and mounting /parity/data (in your case /root/.local/share/io.parity.ethereum/) to that volume.

To create volume:

docker volume create myvolume

Then in compose file I've added volume:

volumes:
  myvolume:
    external: true

and in compose file in the parity container configuration replaced volume mapping

- ./data/is_authority:/parity/data

with

- myvolume:/parity/data

So with your docker run command I'd try replacing

-v /d/parity/docker:/root/.local/share/io.parity.ethereum/

with

-v myvolume:/root/.local/share/io.parity.ethereum/
  • Can you describe a bit more, I ran into the same problem and have no idea how to use the compose file. I guess you mean config.toml, but it has to be reachable first.. I just started with docker as my parity for windows won't work anymore – rfcdejong Dec 13 '17 at 23:43
  • 1
    Sorry, that was not quite clear, I admit, I will try to clarify that in my answer. Docker compose file is yml file that you use to configure your docker containers instad of using docker run command, but you can do the same thing also with run command. I've created the yml with this project, but run into this problem (at least I suspect it's the same one). – peterr Dec 14 '17 at 13:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.