bcgov / von-network

A portable development level Indy Node network.
Apache License 2.0
163 stars 188 forks source link

getDockerHost: command not found #225

Closed deamonyi closed 2 years ago

deamonyi commented 2 years ago

Hello。I'm trying to start von-network through git bash on windows 10. In the step [ ./manage start ], I got this error in fig1.And I keep getting "error initializing pool ledger" despite following the instructions to clear image cache in docker.What should I do next?(Ps:It runs successfully on play with docker) QQ图片20220430002419 QQ图片20220430002449 QQ图片20220430002518

WadeBarnes commented 2 years ago

@deamonyi, Please check the following:

Ensure curl is installed:

which curl

Should respond with something like:

/mingw64/bin/curl

Ensure you can reach the script. Open the following in a browser; https://raw.githubusercontent.com/bcgov/DITP-DevOps/main/code/snippets/getDockerHost

Ensure curl is able to fetch the script:

https://raw.githubusercontent.com/bcgov/DITP-DevOps/main/code/snippets/getDockerHost

Should respond with:

# ====================================================================
# Get the Docker host address depending on the host system.
#
# Networking changes introduced in Docker 4.1.x and forward on 
# Windows and MAC stop the direct use of the internal docker host IP 
# returned by the `docker run --rm --net=host eclipse/che-ip` process. 
# On Windows and MAC `host.docker.internal` needs to be used for 
# internal connections between containers on separate docker networks.
#
# `host.docker.internal` has been available on Windows and Mac since 
# Docker Engine version 18.03 (March 2018). 
#
# Support for `host.docker.internal` on Linux was introduced in 
# version 20.10.0 (2020-12-08), but it does not run out of the 
# box yet (as of Docker Engine 20.10.11 (2021-11-17)). 
# You need to add `--add-host=host.docker.internal:host-gateway` 
# to the `docker run` command in order for it to work.
# --------------------------------------------------------------------
function getDockerHost() {
  (
    local dockerHostAddress
    unset dockerHostAddress
    if [[ $(uname) == "Linux" ]] ; then
      dockerHostAddress=$(docker run --rm --net=host eclipse/che-ip)
    else
      dockerHostAddress=host.docker.internal
    fi
    echo ${DOCKERHOST:-${APPLICATION_URL:-${dockerHostAddress}}}
  )
}
# ====================================================================
deamonyi commented 2 years ago

I did it. Thank you!

WadeBarnes commented 2 years ago

@deamonyi, So, is it all working now for you? If so what was the issue; missing curl, or curl not being able to fetch the script?

deamonyi commented 2 years ago

Yeah,it is all working after curl installed.