e6c992ba8b
Updates/adds a new multistage (build-kit) Dockerfile. (if accepted, could make `Dockerfile.monolith` and `Dockerfile.polylith` in `build/docker` obsolete) There's no huge difference between the dockerfiles, except this uses a non-root user when running the container, also doesn't copy the working directory to the image when building. Also adds vulnerabilities scans using [Trivy](https://github.com/aquasecurity/trivy) for the created docker images. (untested) Building images is done using ``` docker build . --target image-monolith -t dendrite-monolith docker build . --target image-polylith -t dendrite-polylith ``` As noted in the comments, only adds `dendrite-polylith-multi` to the polylith image and all required binaries to the monolith image. Probably needs some docs updating, if this is accepted. Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
11 lines
337 B
Bash
Executable File
11 lines
337 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
cd $(git rev-parse --show-toplevel)
|
|
|
|
TAG=${1:-latest}
|
|
|
|
echo "Building tag '${TAG}'"
|
|
|
|
docker build . --target monolith -t matrixdotorg/dendrite-monolith:${TAG}
|
|
docker build . --target polylith -t matrixdotorg/dendrite-monolith:${TAG}
|
|
docker build . --target demo-pinecone -t matrixdotorg/dendrite-demo-pinecone:${TAG} |