docker: update base to rockylinux-9.8, golang builder, README (#13757)
* update Dockerfile base to rockylinux-9.8 * update golang builder to golang 1.25.12 * update docker README build instructions The build context expected by different stages of the Dockerfile is a bit confusing ... most expect the context root to be packaging/docker/ but fdb-kubernetes-monitor expects the repo root. How it's actually built by the release system is in the build-output packages/docker/ dir where the needed sources are all copied.
This commit is contained in:
parent
7da2679aa6
commit
3d64ad40be
|
|
@ -16,7 +16,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
FROM rockylinux/rockylinux:9.6-minimal AS base
|
||||
FROM rockylinux/rockylinux:9.8-minimal AS base
|
||||
|
||||
# Disable the faulty mirror list for RockyLinux for now. Since all the other images use the base image
|
||||
# as base we don't have to repeat this step.
|
||||
|
|
@ -60,12 +60,13 @@ RUN curl -Ls "https://github.com/krallin/tini/releases/download/v0.19.0/tini-$TA
|
|||
|
||||
WORKDIR /
|
||||
|
||||
FROM golang:1.25.8-bookworm AS go-build
|
||||
# Check that glibc version in base image >= glibc in go-build image (unless CGO_ENABLED=0)
|
||||
|
||||
FROM golang:1.25.12-bookworm AS go-build
|
||||
COPY fdbkubernetesmonitor/ /fdbkubernetesmonitor
|
||||
WORKDIR /fdbkubernetesmonitor
|
||||
RUN go build -o /fdb-kubernetes-monitor *.go
|
||||
|
||||
# Build the fdb-aws-s3-credentials-fetcher in a dedicated build
|
||||
FROM go-build AS go-credentials-fetcher-build
|
||||
COPY fdb-aws-s3-credentials-fetcher/ /fdb-aws-s3-credentials-fetcher
|
||||
WORKDIR /fdb-aws-s3-credentials-fetcher
|
||||
|
|
|
|||
|
|
@ -18,15 +18,15 @@ the expectation that it is, at least, partially (if not entirely) incorrect.
|
|||
If you only want to build a custom container image based on an already released FDB version you run the following command from the root:
|
||||
|
||||
```bash
|
||||
export REGISTRY=docker.io
|
||||
export FDB_VERSION=7.3.63
|
||||
docker build --build-arg FDB_VERSION=${FDB_VERSION} -t ${REGISTRY}/foundationdb/fdb-kubernetes-monitor:${FDB_VERSION} --target fdb-kubernetes-monitor -f ./packaging/docker/Dockerfile .
|
||||
FDB_VERSION=7.3.79
|
||||
docker build --build-arg FDB_VERSION=${FDB_VERSION} -t foundationdb:${FDB_VERSION} --target foundationdb ./packaging/docker
|
||||
```
|
||||
|
||||
Or if you want to build the `foundationdb` image and not the `fdb-kubernetes-monitor`:
|
||||
If you want to build the `fdb-kubernetes-monitor` image (which includes fdb binaries too),
|
||||
you need to use the build-output directory, even if not using binaries from the build.
|
||||
(Just the cmake configure step is enough to set this up.)
|
||||
|
||||
```bash
|
||||
export REGISTRY=docker.io
|
||||
export FDB_VERSION=7.3.63
|
||||
docker build --build-arg FDB_VERSION=${FDB_VERSION} -t ${REGISTRY}/foundationdb/foundationdb:${FDB_VERSION} --target foundationdb -f ./packaging/docker/Dockerfile .
|
||||
FDB_VERSION=7.3.79
|
||||
docker build --build-arg FDB_VERSION=${FDB_VERSION} -t fdb-kubernetes-monitor:${FDB_VERSION} --target fdb-kubernetes-monitor .../build-output/packages/docker
|
||||
```
|
||||
|
|
|
|||
Loading…
Reference in New Issue