No puede combinar archivos docker porque pueden producirse conflictos. Lo que quiere hacer es crear un nuevo archivo docker o crear una imagen personalizada.
TL; DR; Si su contenedor de desarrollo actual contiene todas las herramientas que necesita y funciona, guárdelo como una imagen y luego en un repositorio y cree un archivo docker para extraer esa imagen de ese repositorio.
Detalles: crear una imagen personalizada es mucho más fácil que crear un archivo docker con una imagen pública, ya que puede almacenar los hacks y modificaciones en la imagen. Para hacerlo, inicie un contenedor en blanco con una imagen básica de Linux (o broadinstitute / scala-baseimage), instale las herramientas que necesite y configúrelas hasta que todo funcione correctamente, luego guárdelo (el contenedor) como una imagen. Cree un nuevo contenedor a partir de esta imagen y pruebe para ver si puede compilar su código sobre él a través de docker-compose (o como quiera hacerlo / compilarlo). Si funciona, entonces tiene una imagen base de trabajo que puede cargar en un repositorio para que otros puedan extraerla.
Para crear un dockerfile con una imagen pública, deberá colocar todos los hacks, modificaciones y configuraciones en el dockerfile. Es decir, deberá colocar cada línea de comando que utilizó en un archivo de texto y reducir los hacks, modificaciones y configuración en líneas de comando. Al final, su dockerfile creará una imagen automáticamente y no necesita almacenar esta imagen en un repositorio y todo lo que necesita hacer es darles a otros el dockerfile y ellos pueden girar la imagen en su propia ventana acoplable.
Tenga en cuenta que una vez que tenga un archivo docker en funcionamiento, puede modificarlo fácilmente, ya que creará una nueva imagen cada vez que use el archivo docker. Con una imagen personalizada, es posible que tenga problemas en los que necesite reconstruir la imagen debido a conflictos. Por ejemplo, todas sus herramientas funcionan con openjdk hasta que instala una que no funciona. La solución puede implicar desinstalar openjdk y usar el de Oracle, pero toda la configuración que hizo para todas las herramientas que instaló se rompió.