Reputation: 71
I'm running openjdk:13-alpine docker container and mounted the garmin connectiq-sdk files into the container. Trying to run monkeyc command fails with "not found".
~/projects/garmin$ docker container run --rm -it --name monkeyc -v $(pwd):/home/garmin/ -w /home/garmin/ openjdk:13-alpine ash
/home/garmin # ./connectiq-sdk/bin/monkeyc --version
ash: ./connectiq-sdk/bin/monkeyc: not found
Outside the container the command works as expected
~/projects/garmin$ ./connectiq-sdk/bin/monkeyc --version
Connect IQ compiler version 3.0.3
Upvotes: 0
Views: 399
Reputation: 71
The monkeyc command is a bash script. Bash shell is not installed on alpine Linux in the container. Should use ash shell instead. Switching from bash to ash in the monkeyc script works.
~/projects/garmin$ docker container run --rm -it --name monkeyc -v $(pwd):/home/garmin/ -w /home/garmin/ openjdk:13-alpine ash
/home/garmin # ./connectiq-sdk/bin/monkeyc --version
ash: ./connectiq-sdk/bin/monkeyc: not found
/home/garmin # cat ./connectiq-sdk/bin/monkeyc
#!/bin/bash
MB_HOME="$( cd "$( dirname "$0" )" && pwd )"
java -classpath "$MB_HOME"/monkeybrains.jar com.garmin.monkeybrains.Monkeybrains "$@"
/home/garmin # vi ./connectiq-sdk/bin/monkeyc
/home/garmin # ./connectiq-sdk/bin/monkeyc --version
Connect IQ compiler version 3.0.3
/home/garmin # cat ./connectiq-sdk/bin/monkeyc
#!/bin/ash
MB_HOME="$( cd "$( dirname "$0" )" && pwd )"
java -classpath "$MB_HOME"/monkeybrains.jar com.garmin.monkeybrains.Monkeybrains "$@"
Upvotes: 0