Coder Social home page Coder Social logo

cordova-android-builder's Introduction

Build Cordova Application in Docker


Use docker to build cordova applications. For local development, testing, CI/CD...

Docker repository

https://hub.docker.com/r/hamdifourati/cordova-android-builder/

Requirements

  • Docker

Installed dependencies

  • NodeJS v20 LTS
  • Cordova v12.0.0
  • Android Platform Tools
  • Android Build Tools 33.0.2
  • Android 33

How to

Pull image from Docker hub

docker pull hamdifourati/cordova-android-builder

Run Builder Container

# Check dependencies are installed and configured.
docker run -v <local-app-src>:/opt/src --rm hamdifourati/cordova-android-builder cordova requirements

# Build Android apk
docker run -v <local-app-src>:/opt/src --rm hamdifourati/cordova-android-builder cordova build

Interactive shell

Run a shell inside the conatiner

docker run -it -v <local-app-src>:/opt/src --rm hamdifourati/cordova-android-builder bash

root@cordova:/opt/src# cordova platform add android
root@cordova:/opt/src# cordova requirements
root@cordova:/opt/src# cordova build

The Generated APK is in: /opt/src/platforms/android/app/build/outputs/apk/

Install Android packages ( build-tools, platform-tools .. )

Note that this image uses sdkmanager to manage android packages and comes with some default packages. You are more likely to need different versions.

Install using a custom Dockerfile

FROM hamdifourati/cordova-android-builder

RUN ( sleep 5 && while [ 1 ]; do sleep 1; echo y; done ) | sdkmanager "platforms;android-30"

Install in interactive shell

# attach to your already running container
docker exec -it <cordova-container-name> bash

# Install & Accept linceses
root@cordova:/opt/src# sdkmanager "platforms;android-30"

You can always list available packages either inside the container or directly.

docker run -it --rm hamdifourati/cordova-android-builder sdkmanager --list

Enjoy !

cordova-android-builder's People

Contributors

hamdifourati avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.