Fallback to /proc/meminfo when memory.limit_in_bytes exists but no limit
is set
This commit is contained in:
parent
2dbcd67c01
commit
f06ba30318
|
@ -34,25 +34,25 @@ job "base_images" {
|
|||
task "java11" {
|
||||
driver = "docker"
|
||||
config {
|
||||
image = "danielberteaud/java:11.24.3-3"
|
||||
image = "danielberteaud/java:11.24.3-4"
|
||||
}
|
||||
}
|
||||
task "java17" {
|
||||
driver = "docker"
|
||||
config {
|
||||
image = "danielberteaud/java:17.24.3-3"
|
||||
image = "danielberteaud/java:17.24.3-4"
|
||||
}
|
||||
}
|
||||
task "java21" {
|
||||
driver = "docker"
|
||||
config {
|
||||
image = "danielberteaud/java:21.24.3-3"
|
||||
image = "danielberteaud/java:21.24.3-4"
|
||||
}
|
||||
}
|
||||
task "java8" {
|
||||
driver = "docker"
|
||||
config {
|
||||
image = "danielberteaud/java:8.24.3-3"
|
||||
image = "danielberteaud/java:8.24.3-4"
|
||||
}
|
||||
}
|
||||
task "mariadb" {
|
||||
|
|
|
@ -13,7 +13,9 @@ get_max_mem(){
|
|||
else
|
||||
echo $(($(cat /sys/fs/cgroup/memory.max)/1024/1024))
|
||||
fi
|
||||
elif [ -e /sys/fs/cgroup/memory/memory.limit_in_bytes ]; then
|
||||
# memory.limit_in_bytes can contain the max memory allocated to the container
|
||||
# but if the container has no limit, it'll contain 9223372036854771712 in which case we must fallback to /proc/meminfo
|
||||
elif [ -e /sys/fs/cgroup/memory/memory.limit_in_bytes -a "$(cat /sys/fs/cgroup/memory/memory.limit_in_bytes)" != "9223372036854771712" ]; then
|
||||
echo $(($(cat /sys/fs/cgroup/memory/memory.limit_in_bytes)/1024/1024))
|
||||
else
|
||||
echo $(($(cat /proc/meminfo | grep MemTotal | sed -E 's/MemTotal:\s+([0-9]+)\s+kB/\1/')/1024))
|
||||
|
|
|
@ -61,73 +61,73 @@ function build_alpine {
|
|||
}
|
||||
function build_java11 {
|
||||
if [ "${IMAGE_JAVA11_AVAILABLE:-0}" = "1" ]; then
|
||||
echo "Image danielberteaud/java:11.24.3-3 already available"
|
||||
echo "Image danielberteaud/java:11.24.3-4 already available"
|
||||
return
|
||||
fi
|
||||
if ! docker manifest inspect danielberteaud/java:11.24.3-3 > /dev/null 2>&1; then
|
||||
echo "Building java:11.24.3-3"
|
||||
if ! docker manifest inspect danielberteaud/java:11.24.3-4 > /dev/null 2>&1; then
|
||||
echo "Building java:11.24.3-4"
|
||||
export BUILDKIT_PROGRESS=plain
|
||||
docker build -t danielberteaud/java:11.24.3-3 -t danielberteaud/java11:latest -t danielberteaud/java:11 --build-arg=JAVA_VERSION=11 output/images/java &&\
|
||||
docker push danielberteaud/java:11.24.3-3 &&\
|
||||
docker build -t danielberteaud/java:11.24.3-4 -t danielberteaud/java11:latest -t danielberteaud/java:11 --build-arg=JAVA_VERSION=11 output/images/java &&\
|
||||
docker push danielberteaud/java:11.24.3-4 &&\
|
||||
docker push danielberteaud/java11:latest &&\
|
||||
docker push danielberteaud/java:11 &&\
|
||||
echo "danielberteaud/java:11.24.3-3 pushed to remote repo"
|
||||
echo "danielberteaud/java:11.24.3-4 pushed to remote repo"
|
||||
else
|
||||
echo "Image danielberteaud/java:11.24.3-3 already available"
|
||||
echo "Image danielberteaud/java:11.24.3-4 already available"
|
||||
fi
|
||||
IMAGE_JAVA11_AVAILABLE=1
|
||||
}
|
||||
function build_java17 {
|
||||
if [ "${IMAGE_JAVA17_AVAILABLE:-0}" = "1" ]; then
|
||||
echo "Image danielberteaud/java:17.24.3-3 already available"
|
||||
echo "Image danielberteaud/java:17.24.3-4 already available"
|
||||
return
|
||||
fi
|
||||
if ! docker manifest inspect danielberteaud/java:17.24.3-3 > /dev/null 2>&1; then
|
||||
echo "Building java:17.24.3-3"
|
||||
if ! docker manifest inspect danielberteaud/java:17.24.3-4 > /dev/null 2>&1; then
|
||||
echo "Building java:17.24.3-4"
|
||||
export BUILDKIT_PROGRESS=plain
|
||||
docker build -t danielberteaud/java:17.24.3-3 -t danielberteaud/java17:latest -t danielberteaud/java:17 --build-arg=JAVA_VERSION=17 output/images/java &&\
|
||||
docker push danielberteaud/java:17.24.3-3 &&\
|
||||
docker build -t danielberteaud/java:17.24.3-4 -t danielberteaud/java17:latest -t danielberteaud/java:17 --build-arg=JAVA_VERSION=17 output/images/java &&\
|
||||
docker push danielberteaud/java:17.24.3-4 &&\
|
||||
docker push danielberteaud/java17:latest &&\
|
||||
docker push danielberteaud/java:17 &&\
|
||||
echo "danielberteaud/java:17.24.3-3 pushed to remote repo"
|
||||
echo "danielberteaud/java:17.24.3-4 pushed to remote repo"
|
||||
else
|
||||
echo "Image danielberteaud/java:17.24.3-3 already available"
|
||||
echo "Image danielberteaud/java:17.24.3-4 already available"
|
||||
fi
|
||||
IMAGE_JAVA17_AVAILABLE=1
|
||||
}
|
||||
function build_java21 {
|
||||
if [ "${IMAGE_JAVA21_AVAILABLE:-0}" = "1" ]; then
|
||||
echo "Image danielberteaud/java:21.24.3-3 already available"
|
||||
echo "Image danielberteaud/java:21.24.3-4 already available"
|
||||
return
|
||||
fi
|
||||
if ! docker manifest inspect danielberteaud/java:21.24.3-3 > /dev/null 2>&1; then
|
||||
echo "Building java:21.24.3-3"
|
||||
if ! docker manifest inspect danielberteaud/java:21.24.3-4 > /dev/null 2>&1; then
|
||||
echo "Building java:21.24.3-4"
|
||||
export BUILDKIT_PROGRESS=plain
|
||||
docker build -t danielberteaud/java:21.24.3-3 -t danielberteaud/java21:latest -t danielberteaud/java:21 --build-arg=JAVA_VERSION=21 output/images/java &&\
|
||||
docker push danielberteaud/java:21.24.3-3 &&\
|
||||
docker build -t danielberteaud/java:21.24.3-4 -t danielberteaud/java21:latest -t danielberteaud/java:21 --build-arg=JAVA_VERSION=21 output/images/java &&\
|
||||
docker push danielberteaud/java:21.24.3-4 &&\
|
||||
docker push danielberteaud/java21:latest &&\
|
||||
docker push danielberteaud/java:21 &&\
|
||||
echo "danielberteaud/java:21.24.3-3 pushed to remote repo"
|
||||
echo "danielberteaud/java:21.24.3-4 pushed to remote repo"
|
||||
else
|
||||
echo "Image danielberteaud/java:21.24.3-3 already available"
|
||||
echo "Image danielberteaud/java:21.24.3-4 already available"
|
||||
fi
|
||||
IMAGE_JAVA21_AVAILABLE=1
|
||||
}
|
||||
function build_java8 {
|
||||
if [ "${IMAGE_JAVA8_AVAILABLE:-0}" = "1" ]; then
|
||||
echo "Image danielberteaud/java:8.24.3-3 already available"
|
||||
echo "Image danielberteaud/java:8.24.3-4 already available"
|
||||
return
|
||||
fi
|
||||
if ! docker manifest inspect danielberteaud/java:8.24.3-3 > /dev/null 2>&1; then
|
||||
echo "Building java:8.24.3-3"
|
||||
if ! docker manifest inspect danielberteaud/java:8.24.3-4 > /dev/null 2>&1; then
|
||||
echo "Building java:8.24.3-4"
|
||||
export BUILDKIT_PROGRESS=plain
|
||||
docker build -t danielberteaud/java:8.24.3-3 -t danielberteaud/java8:latest -t danielberteaud/java:8 --build-arg=JAVA_VERSION=8 output/images/java &&\
|
||||
docker push danielberteaud/java:8.24.3-3 &&\
|
||||
docker build -t danielberteaud/java:8.24.3-4 -t danielberteaud/java8:latest -t danielberteaud/java:8 --build-arg=JAVA_VERSION=8 output/images/java &&\
|
||||
docker push danielberteaud/java:8.24.3-4 &&\
|
||||
docker push danielberteaud/java8:latest &&\
|
||||
docker push danielberteaud/java:8 &&\
|
||||
echo "danielberteaud/java:8.24.3-3 pushed to remote repo"
|
||||
echo "danielberteaud/java:8.24.3-4 pushed to remote repo"
|
||||
else
|
||||
echo "Image danielberteaud/java:8.24.3-3 already available"
|
||||
echo "Image danielberteaud/java:8.24.3-4 already available"
|
||||
fi
|
||||
IMAGE_JAVA8_AVAILABLE=1
|
||||
}
|
||||
|
|
|
@ -13,7 +13,9 @@ get_max_mem(){
|
|||
else
|
||||
echo $(($(cat /sys/fs/cgroup/memory.max)/1024/1024))
|
||||
fi
|
||||
elif [ -e /sys/fs/cgroup/memory/memory.limit_in_bytes ]; then
|
||||
# memory.limit_in_bytes can contain the max memory allocated to the container
|
||||
# but if the container has no limit, it'll contain 9223372036854771712 in which case we must fallback to /proc/meminfo
|
||||
elif [ -e /sys/fs/cgroup/memory/memory.limit_in_bytes -a "$(cat /sys/fs/cgroup/memory/memory.limit_in_bytes)" != "9223372036854771712" ]; then
|
||||
echo $(($(cat /sys/fs/cgroup/memory/memory.limit_in_bytes)/1024/1024))
|
||||
else
|
||||
echo $(($(cat /proc/meminfo | grep MemTotal | sed -E 's/MemTotal:\s+([0-9]+)\s+kB/\1/')/1024))
|
||||
|
|
|
@ -237,7 +237,7 @@ docker:
|
|||
|
||||
# Alpine with Java8 (temurin)
|
||||
java8:
|
||||
image: java:8.24.3-3
|
||||
image: java:8.24.3-4
|
||||
build_args:
|
||||
JAVA_VERSION: 8
|
||||
tags:
|
||||
|
@ -246,7 +246,7 @@ docker:
|
|||
|
||||
# Alpine with Java11 (temurin)
|
||||
java11:
|
||||
image: java:11.24.3-3
|
||||
image: java:11.24.3-4
|
||||
build_args:
|
||||
JAVA_VERSION: 11
|
||||
tags:
|
||||
|
@ -255,7 +255,7 @@ docker:
|
|||
|
||||
# Alpine with Java17 (temurin)
|
||||
java17:
|
||||
image: java:17.24.3-3
|
||||
image: java:17.24.3-4
|
||||
build_args:
|
||||
JAVA_VERSION: 17
|
||||
tags:
|
||||
|
@ -264,7 +264,7 @@ docker:
|
|||
|
||||
# Alpine with Java21 (temurin)
|
||||
java21:
|
||||
image: java:21.24.3-3
|
||||
image: java:21.24.3-4
|
||||
build_args:
|
||||
JAVA_VERSION: 21
|
||||
tags:
|
||||
|
|
Loading…
Reference in New Issue