Docker build env#22
Conversation
|
Thank you, I'll check it soon |
|
I ran from inside docker container: git clone --recurse-submodules https://github.com/ezra-bible-app/ezra-bible-app-cordova.gitand got: ezra-bible-app/ezra-bible-app#428 should fix it |
zhuiks
left a comment
There was a problem hiding this comment.
On docker image the build was successful, and I was able to extract apk.
I see the following opportunities for the docker image:
- Debug build for developers. I can download required files and install docker. But then it would be nice to run something like
docker-build.shand get my apk in dist folder. For this build it would be nice to connect volume with local ezra-bible-app instead of cloning from github. - Automatic build for github actions. That can be added to other build scripts under Ezra Bible App
Currently, generated apk quietly failing on both emulator and Samsung Galaxy Tab E

I have a plan to add a script like that. See the open points mentioned above. You can mount directories into Docker and then run scripts that are physically stored outside of the Docker container. Try Replace This mounts your local
We can consider that. However, we may have issues due to Oracle JDK (for licensing reasons). Not sure whether you can just build a Docker image that is shipped with the integrated Oracle JDK.
Can you generate a log file using |
|
@zhuiks Still looking into this. Note that I found out that the root-cause of the issues with the APK generated in the Docker env. is that a certain important library (libnode.so) for some reason does not get included in the APK. I haven't figured out why yet. Still trying to understand what's the difference between the Docker env. and my (working) build environment on my laptop. |
Based on the Dockerfile added by this PR I was able to perform a build. This should be reproducable on any machine that runs Docker.
@zhuiks Feel free to give it a try.
You will need to first download the following files and put them in the working directory under the cloned repo:
You will see that these files are referenced in the top-section of the Dockerfile like this:
Note that particularly the Android NDK version is mandatory (requirement described by nodejs-mobile).
If you want to use this based on how it is now:
apt-get install docker.iodocker build -t ezra-cordova .(Note the.at the end) in the cloned repo working dir.docker run -it ezra-cordova bashezra-bible-app-cordova(including submodules init & update) and run the build.Open points: