AliceVision
AliceVision copied to clipboard
Add new Dockerfile and configure GH action to build & push
Description
This PR introduces the following:
- A brand new Dockerfile (
docker/Dockerfile_ubuntu_new
) to build alicevision from scratch on the latest Ubuntu and CUDA. - A new GitHub action which automatically builds a docker image and pushes it to ghcr.io on every push to the specified branches. This requires a secret to be configured by the repo owner:
GHCR_PUSH_TOKEN
which is a PAT with thepackages:write
action. This can be easily changed to push to Docker Hub if desired (or both). This has been tested thoroughly on my fork (check here). Moreover, tests can be run from the build arguments by setting the env var:RUN_TESTS
toON
which is done in the latest run. - Attempts to fix the old Dockerfiles, but I ended up disabling them in the GH action. I recommend removing them altogether.
- A new CMake build variable
AV_BUILD_VPX
which defaults toON
and controls the build oflibvpx
in case someone wants to install it externally and skip its build (I did this in the new Dockerfile). - Fixed a bug in
docker/check-cpu.sh
which was causing builds to always use 1 CPU regardless of number of available CPUs on the build machine. I am not using it anyway in the new Dockerfile, but it was hard to miss! - Removed dependency on the
docker/build*
scripts which is not the recommended way of invoking docker builds as they should be self-contained and independent of the host OS.
Features list
- New Docker build
- New GitHub action
- Some bug fixes