fw-nrfconnect-nrf-docker icon indicating copy to clipboard operation
fw-nrfconnect-nrf-docker copied to clipboard

complete source separation

Open lundacode opened this issue 5 years ago • 1 comments
trafficstars

This is a change request.

It would nice to have all the source code and the development environment completely separated. The user's directory would have ncs/nrf. The docker image would contain only the development environment.

I think two docker images are necessary. The first would contain approximately what we have now now in the first RUN, i.e. an optimised ubuntu image + toolchain, a second docker image would start FROM the first and fetch/update Zephyr (+stuff) into the users ncs directory, and update Python dependencies inside the image. The first 'base' docker image is pretty static, the second 'user' image is very small, dynamic and only contains the changed dependencies relevant to the particular branch being used (master, v1.2.0, etc).

Rationale for this is 1) lightweight easily maintainable images 2) often it is necessary to add patches to Zephyr too while working on a project, but doing this inside docker is cumbersome.

lundacode avatar Apr 01 '20 06:04 lundacode

Yes, this makes sense, I was thinking the same when I started touse this for https://github.com/bifravst/firmware and there I am essentially re-running the second command: https://github.com/bifravst/firmware/blob/0789005b99881674b8cfcfcafba949755b73a602/Dockerfile

coderbyheart avatar Apr 01 '20 07:04 coderbyheart