CMake generate debian packages under build/$<CONFIG>/debian instead of build/$mode/debian. so let's translate $mode to $<CONFIG> if build.ninja is found under build/ directory, as configure.py puts build.ninja under $top_srcdir, while CMake puts it under build/ . Signed-off-by: Kefu Chai <kefu.chai@scylladb.com> Closes scylladb/scylladb#17592
Docker image with a self-built executable
The following instructions will allow you to build a Docker image which contains a combination of some tools from the nightly build in http://downloads.scylladb.com/ (as described above) but with a Scylla executable which you build yourself.
Do the following in the top-level Scylla source directory:
-
Build your own Scylla in whatever build mode you prefer, e.g., dev.
-
Run
ninja dist-dev(with the same mode name as above) to prepare the distribution artifacts. -
Run
./dist/docker/debian/build_docker.sh --mode devThis creates a docker image as a file, in the OCI format, and prints its name, looking something like:
oci-archive:build/dev/dist/docker/scylla-4.6.dev-0.20210829.4009d8b06 -
This file can copied to a docker repository, or run directly with podman:
podman run oci-archive:build/dev/dist/docker/scylla-4.6.dev-0.20210829.4009d8b06Often with additional parameters, as in docs/alternator/getting-started.md:
podman run --name scylla -d -p 8000:8000 oci-archive:... --alternator-port=8000 --alternator-write-isolation=always