From 48ecd1f2238ad68db6a00f511b9b50e03bfc899e Mon Sep 17 00:00:00 2001 From: Bitnami Bot Date: Mon, 27 Nov 2023 17:30:24 +0100 Subject: [PATCH] [bitnami/aspnet-core] Release 8.0.0-debian-11-r0 (#53236) Signed-off-by: Bitnami Containers --- bitnami/aspnet-core/8/debian-11/Dockerfile | 57 ++++++++ .../8/debian-11/docker-compose.yml | 13 ++ .../opt/bitnami/.bitnami_components.json | 8 ++ .../prebuildfs/opt/bitnami/base/functions | 122 ++++++++++++++++++ .../prebuildfs/opt/bitnami/base/helpers | 42 ++++++ .../opt/bitnami/licenses/licenses.txt | 2 + .../prebuildfs/usr/sbin/install_packages | 27 ++++ .../debian-11/prebuildfs/usr/sbin/run-script | 24 ++++ .../bitnami/scripts/aspnet-core/entrypoint.sh | 12 ++ .../bitnami/scripts/aspnet-core/postunpack.sh | 13 ++ .../aspnet-core/8/debian-11/tags-info.yaml | 5 + bitnami/aspnet-core/README.md | 4 +- bitnami/aspnet-core/docker-compose.yml | 2 +- 13 files changed, 328 insertions(+), 3 deletions(-) create mode 100644 bitnami/aspnet-core/8/debian-11/Dockerfile create mode 100644 bitnami/aspnet-core/8/debian-11/docker-compose.yml create mode 100644 bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json create mode 100644 bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/base/functions create mode 100644 bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/base/helpers create mode 100644 bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/licenses/licenses.txt create mode 100755 bitnami/aspnet-core/8/debian-11/prebuildfs/usr/sbin/install_packages create mode 100755 bitnami/aspnet-core/8/debian-11/prebuildfs/usr/sbin/run-script create mode 100755 bitnami/aspnet-core/8/debian-11/rootfs/opt/bitnami/scripts/aspnet-core/entrypoint.sh create mode 100755 bitnami/aspnet-core/8/debian-11/rootfs/opt/bitnami/scripts/aspnet-core/postunpack.sh create mode 100644 bitnami/aspnet-core/8/debian-11/tags-info.yaml diff --git a/bitnami/aspnet-core/8/debian-11/Dockerfile b/bitnami/aspnet-core/8/debian-11/Dockerfile new file mode 100644 index 000000000000..507b45c453c6 --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/Dockerfile @@ -0,0 +1,57 @@ +# Copyright VMware, Inc. +# SPDX-License-Identifier: APACHE-2.0 + +FROM docker.io/bitnami/minideb:bullseye + +ARG TARGETARCH + +LABEL com.vmware.cp.artifact.flavor="sha256:1e1b4657a77f0d47e9220f0c37b9bf7802581b93214fff7d1bd2364c8bf22e8e" \ + org.opencontainers.image.base.name="docker.io/bitnami/minideb:bullseye" \ + org.opencontainers.image.created="2023-11-27T15:49:11Z" \ + org.opencontainers.image.description="Application packaged by VMware, Inc" \ + org.opencontainers.image.licenses="Apache-2.0" \ + org.opencontainers.image.ref.name="8.0.0-debian-11-r0" \ + org.opencontainers.image.title="aspnet-core" \ + org.opencontainers.image.vendor="VMware, Inc." \ + org.opencontainers.image.version="8.0.0" + +ENV HOME="/app" \ + OS_ARCH="${TARGETARCH:-amd64}" \ + OS_FLAVOUR="debian-11" \ + OS_NAME="linux" + +COPY prebuildfs / +SHELL ["/bin/bash", "-o", "errexit", "-o", "nounset", "-o", "pipefail", "-c"] +# Install required system packages and dependencies +RUN install_packages build-essential ca-certificates curl git libcap2-bin libgcc-s1 libicu-dev liblttng-ust-dev libsqlite3-dev libssl-dev libstdc++6 pkg-config procps unzip wget zlib1g +RUN mkdir -p /tmp/bitnami/pkg/cache/ ; cd /tmp/bitnami/pkg/cache/ ; \ + COMPONENTS=( \ + "aspnet-core-8.0.0-0-linux-${OS_ARCH}-debian-11" \ + ) ; \ + for COMPONENT in "${COMPONENTS[@]}"; do \ + if [ ! -f "${COMPONENT}.tar.gz" ]; then \ + curl -SsLf "https://downloads.bitnami.com/files/stacksmith/${COMPONENT}.tar.gz" -O ; \ + curl -SsLf "https://downloads.bitnami.com/files/stacksmith/${COMPONENT}.tar.gz.sha256" -O ; \ + fi ; \ + sha256sum -c "${COMPONENT}.tar.gz.sha256" ; \ + tar -zxf "${COMPONENT}.tar.gz" -C /opt/bitnami --strip-components=2 --no-same-owner --wildcards '*/files' ; \ + rm -rf "${COMPONENT}".tar.gz{,.sha256} ; \ + done +RUN apt-get autoremove --purge -y curl && \ + apt-get update && apt-get upgrade -y && \ + apt-get clean && rm -rf /var/lib/apt/lists /var/cache/apt/archives +RUN sed -i 's/^PASS_MAX_DAYS.*/PASS_MAX_DAYS 90/' /etc/login.defs && \ + sed -i 's/^PASS_MIN_DAYS.*/PASS_MIN_DAYS 0/' /etc/login.defs && \ + sed -i 's/sha512/sha512 minlen=8/' /etc/pam.d/common-password + +COPY rootfs / +RUN /opt/bitnami/scripts/aspnet-core/postunpack.sh +ENV APP_VERSION="8.0.0" \ + BITNAMI_APP_NAME="aspnet-core" \ + DOTNET_CLI_HOME="/app" \ + DOTNET_ROOT="/opt/bitnami/aspnet-core/bin" \ + PATH="/opt/bitnami/aspnet-core/bin:$PATH" + +WORKDIR /app +ENTRYPOINT [ "/opt/bitnami/scripts/aspnet-core/entrypoint.sh" ] +CMD [ "/bin/bash" ] diff --git a/bitnami/aspnet-core/8/debian-11/docker-compose.yml b/bitnami/aspnet-core/8/debian-11/docker-compose.yml new file mode 100644 index 000000000000..2e1d93a7e216 --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/docker-compose.yml @@ -0,0 +1,13 @@ +# Copyright VMware, Inc. +# SPDX-License-Identifier: APACHE-2.0 + +version: '2' +services: + aspnet-core: + image: docker.io/bitnami/aspnet-core:8 + command: ["tail", "-f", "/dev/null"] # To keep the container running + volumes: + - aspnet-core_data:/app +volumes: + aspnet-core_data: + driver: local diff --git a/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json b/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json new file mode 100644 index 000000000000..998de8cb5d32 --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json @@ -0,0 +1,8 @@ +{ + "aspnet-core": { + "arch": "amd64", + "distro": "debian-11", + "type": "NAMI", + "version": "8.0.0-0" + } +} \ No newline at end of file diff --git a/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/base/functions b/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/base/functions new file mode 100644 index 000000000000..76899b6c85ae --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/base/functions @@ -0,0 +1,122 @@ +#!/bin/bash +# Copyright VMware, Inc. +# SPDX-License-Identifier: APACHE-2.0 + +[[ ${BASH_DEBUG:-false} = true ]] && set -x + +# Constants +MODULE="$(basename "$0")" +BITNAMI_PREFIX=/opt/bitnami + +# Color Palette +RESET='\033[0m' +BOLD='\033[1m' + +## Foreground +BLACK='\033[38;5;0m' +RED='\033[38;5;1m' +GREEN='\033[38;5;2m' +YELLOW='\033[38;5;3m' +BLUE='\033[38;5;4m' +MAGENTA='\033[38;5;5m' +CYAN='\033[38;5;6m' +WHITE='\033[38;5;7m' + +## Background +ON_BLACK='\033[48;5;0m' +ON_RED='\033[48;5;1m' +ON_GREEN='\033[48;5;2m' +ON_YELLOW='\033[48;5;3m' +ON_BLUE='\033[48;5;4m' +ON_MAGENTA='\033[48;5;5m' +ON_CYAN='\033[48;5;6m' +ON_WHITE='\033[48;5;7m' + +# Functions + +######################## +# Print to STDERR +# Arguments: +# Message to print +# Returns: +# None +######################### +stderr_print() { + printf "%b\\n" "${*}" >&2 +} + +######################## +# Log message +# Arguments: +# Message to log +# Returns: +# None +######################### +log() { + stderr_print "${NAMI_DEBUG:+${CYAN}${MODULE:-} ${MAGENTA}$(date "+%T.%2N ")}${RESET}${*}" +} +######################## +# Log an 'info' message +# Arguments: +# Message to log +# Returns: +# None +######################### +info() { + log "${GREEN}INFO ${RESET} ==> ${*}" +} +######################## +# Log message +# Arguments: +# Message to log +# Returns: +# None +######################### +warn() { + log "${YELLOW}WARN ${RESET} ==> ${*}" +} +######################## +# Log an 'error' message +# Arguments: +# Message to log +# Returns: +# None +######################### +error() { + log "${RED}ERROR${RESET} ==> ${*}" +} +######################## +# Print the welcome page +# Globals: +# DISABLE_WELCOME_MESSAGE +# BITNAMI_APP_NAME +# Arguments: +# None +# Returns: +# None +######################### +print_welcome_page() { + if [[ -z "${DISABLE_WELCOME_MESSAGE:-}" ]]; then + if [[ -n "$BITNAMI_APP_NAME" ]]; then + print_image_welcome_page + fi + fi +} +######################## +# Print the welcome page for a Bitnami Docker image +# Globals: +# BITNAMI_APP_NAME +# Arguments: +# None +# Returns: +# None +######################### +print_image_welcome_page() { + local github_url="https://github.com/bitnami/containers" + + log "" + log "${BOLD}Welcome to the Bitnami ${BITNAMI_APP_NAME} container${RESET}" + log "Subscribe to project updates by watching ${BOLD}${github_url}${RESET}" + log "Submit issues and feature requests at ${BOLD}${github_url}/issues${RESET}" + log "" +} diff --git a/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/base/helpers b/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/base/helpers new file mode 100644 index 000000000000..387769aabbf3 --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/base/helpers @@ -0,0 +1,42 @@ +#!/bin/bash +# Copyright VMware, Inc. +# SPDX-License-Identifier: APACHE-2.0 + +. /opt/bitnami/base/functions + +######################## +# Helper function to initialize a single nami module +# Arguments: +# Module to initialize +# Returns: +# None +# Description: +# Initialize an unpacked nami module with the `nami initialize` command. +# Command arguments can be specified as function argumnts after the module name. +# `--log-level trace` flag is added to the command if `NAMI_DEBUG` env variable exists. +# The log level can be overridden using the `NAMI_LOG_LEVEL` env variable. +######################### +nami_initialize_one() { + local module="${1:?module not specified}" + if nami inspect $module | grep -q '"lifecycle": "unpacked"'; then + local inputs= + if [[ -f "/${module}-inputs.json" ]]; then + inputs="--inputs-file=/${module}-inputs.json" + fi + nami ${NAMI_DEBUG:+--log-level ${NAMI_LOG_LEVEL:-trace}} initialize $module $inputs "${@:2}" + fi +} + +######################## +# Helper function to initialize one or more nami modules +# Arguments: +# Module to initialize +# Returns: +# None +######################### +nami_initialize() { + local module="${1:?module not specified}" + for module in "${@}"; do + nami_initialize_one $module + done +} diff --git a/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/licenses/licenses.txt b/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/licenses/licenses.txt new file mode 100644 index 000000000000..76956b38e82c --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/prebuildfs/opt/bitnami/licenses/licenses.txt @@ -0,0 +1,2 @@ +Bitnami containers ship with software bundles. You can find the licenses under: +/opt/bitnami/[name-of-bundle]/licenses/[bundle-version].txt diff --git a/bitnami/aspnet-core/8/debian-11/prebuildfs/usr/sbin/install_packages b/bitnami/aspnet-core/8/debian-11/prebuildfs/usr/sbin/install_packages new file mode 100755 index 000000000000..acbc3173208c --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/prebuildfs/usr/sbin/install_packages @@ -0,0 +1,27 @@ +#!/bin/sh +# Copyright VMware, Inc. +# SPDX-License-Identifier: APACHE-2.0 +set -eu + +n=0 +max=2 +export DEBIAN_FRONTEND=noninteractive + +until [ $n -gt $max ]; do + set +e + ( + apt-get update -qq && + apt-get install -y --no-install-recommends "$@" + ) + CODE=$? + set -e + if [ $CODE -eq 0 ]; then + break + fi + if [ $n -eq $max ]; then + exit $CODE + fi + echo "apt failed, retrying" + n=$(($n + 1)) +done +apt-get clean && rm -rf /var/lib/apt/lists /var/cache/apt/archives diff --git a/bitnami/aspnet-core/8/debian-11/prebuildfs/usr/sbin/run-script b/bitnami/aspnet-core/8/debian-11/prebuildfs/usr/sbin/run-script new file mode 100755 index 000000000000..4ca0f897277e --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/prebuildfs/usr/sbin/run-script @@ -0,0 +1,24 @@ +#!/bin/sh +# Copyright VMware, Inc. +# SPDX-License-Identifier: APACHE-2.0 +set -u + +if [ $# -eq 0 ]; then + >&2 echo "No arguments provided" + exit 1 +fi + +script=$1 +exit_code="${2:-96}" +fail_if_not_present="${3:-n}" + +if test -f "$script"; then + sh $script + + if [ $? -ne 0 ]; then + exit $((exit_code)) + fi +elif [ "$fail_if_not_present" = "y" ]; then + >&2 echo "script not found: $script" + exit 127 +fi diff --git a/bitnami/aspnet-core/8/debian-11/rootfs/opt/bitnami/scripts/aspnet-core/entrypoint.sh b/bitnami/aspnet-core/8/debian-11/rootfs/opt/bitnami/scripts/aspnet-core/entrypoint.sh new file mode 100755 index 000000000000..eef346858223 --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/rootfs/opt/bitnami/scripts/aspnet-core/entrypoint.sh @@ -0,0 +1,12 @@ +#!/bin/bash -e +# Copyright VMware, Inc. +# SPDX-License-Identifier: APACHE-2.0 + +# shellcheck disable=SC1091 + +. /opt/bitnami/base/functions +. /opt/bitnami/base/helpers + +print_welcome_page + +exec "$@" diff --git a/bitnami/aspnet-core/8/debian-11/rootfs/opt/bitnami/scripts/aspnet-core/postunpack.sh b/bitnami/aspnet-core/8/debian-11/rootfs/opt/bitnami/scripts/aspnet-core/postunpack.sh new file mode 100755 index 000000000000..dd8e0a30de13 --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/rootfs/opt/bitnami/scripts/aspnet-core/postunpack.sh @@ -0,0 +1,13 @@ +#!/bin/bash +# Copyright VMware, Inc. +# SPDX-License-Identifier: APACHE-2.0 + +# shellcheck disable=SC1091 + +set -o errexit +set -o nounset +set -o pipefail +# set -o xtrace # Uncomment this line for debugging purpose +mkdir /app +chmod g+rwx /app +setcap CAP_NET_BIND_SERVICE=+eip /opt/bitnami/aspnet-core/bin/dotnet diff --git a/bitnami/aspnet-core/8/debian-11/tags-info.yaml b/bitnami/aspnet-core/8/debian-11/tags-info.yaml new file mode 100644 index 000000000000..965524a7a1b1 --- /dev/null +++ b/bitnami/aspnet-core/8/debian-11/tags-info.yaml @@ -0,0 +1,5 @@ +rolling-tags: +- "8" +- 8-debian-11 +- 8.0.0 +- latest diff --git a/bitnami/aspnet-core/README.md b/bitnami/aspnet-core/README.md index 46eb50a3d625..ded0065fb418 100644 --- a/bitnami/aspnet-core/README.md +++ b/bitnami/aspnet-core/README.md @@ -1,4 +1,4 @@ -# ASP.NET Core packaged by Bitnami +# Bitnami package for ASP.NET Core ## What is ASP.NET Core? @@ -25,7 +25,7 @@ docker-compose up -d * Bitnami closely tracks upstream source changes and promptly publishes new versions of this image using our automated systems. * With Bitnami images the latest bug fixes and features are available as soon as possible. * Bitnami containers, virtual machines and cloud images use the same components and configuration approach - making it easy to switch between formats based on your project needs. -* All our images are based on [minideb](https://github.com/bitnami/minideb) a minimalist Debian based container image which gives you a small base container image and the familiarity of a leading Linux distribution. +* All our images are based on [**minideb**](https://github.com/bitnami/minideb) -a minimalist Debian based container image that gives you a small base container image and the familiarity of a leading Linux distribution- or **scratch** -an explicitly empty image-. * All Bitnami images available in Docker Hub are signed with [Docker Content Trust (DCT)](https://docs.docker.com/engine/security/trust/content_trust/). You can use `DOCKER_CONTENT_TRUST=1` to verify the integrity of the images. * Bitnami container images are released on a regular basis with the latest distribution packages available. diff --git a/bitnami/aspnet-core/docker-compose.yml b/bitnami/aspnet-core/docker-compose.yml index 3a7388bf0bfd..2e1d93a7e216 100644 --- a/bitnami/aspnet-core/docker-compose.yml +++ b/bitnami/aspnet-core/docker-compose.yml @@ -4,7 +4,7 @@ version: '2' services: aspnet-core: - image: docker.io/bitnami/aspnet-core:7 + image: docker.io/bitnami/aspnet-core:8 command: ["tail", "-f", "/dev/null"] # To keep the container running volumes: - aspnet-core_data:/app