Building an Android project from the command line with Docker

I inherited Android Java-code in my company, without Gradle-files etc, and I want to be able to compile this on my dev-server (I program from a ChromeOS machine, hence a CLI SSH connection to a server where I do dev stuff). Now I found some Docker images like (with a not even working command line example) but I don’t manage to create an APK yet. What am I missing and how would you do this?

  • Setting up Ruby along with android in docker
  • Android development environment in Docker
  • Unable to run an Android application in a Docker container with Gitlab-CI
  • How to fix docker so that it stops messing with android studio from connecting to emulator in OSX
  • Android ABI linked to wrong target
  • Accessing Docker container other than ssh
  • Docker: unable to execute the mount command inside an ubuntu 16.10 container [duplicate]
  • Unable to run android emulator inside Docker container
  • Android CI using Bitbucket Pipelines and Docker
  • Why is my volume empty when binding it to a host folder?
  • How can I run specific android app automatically by using Docker?
  • Install swagger-ui error
  • One Solution collect form web for “Building an Android project from the command line with Docker”

    You have three steps to do:

    1. Migrate your project to gradle.

      It isn’t too difficult since there are plenty of gradle project out there and you can try to follow them or just read “Migrating to Gradle” article.

    2. Build project with gradle on local machine.

      If you migrated properly you can build your project in terminal like:

      ./gradlew assembleDebug

      but it might be also assembleDevDebug or assembleProdRelease which depends on your buildType and flavor in gradle. Check which assembles are available by running:

      ./gradlew tasks

    3. Build project using Docker.

      Based on image you linked:

      docker run -t -i ksoichiro/android -v /path/to/project:/workspace -w workspace /bin/sh -c "./gradlew assembleDebug"

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.