Remove wrong container

Signed-off-by: Carlos Rodríguez Hernández <carlos.rodriguez-hernandez@broadcom.com>
This commit is contained in:
Carlos Rodríguez Hernández
2025-06-04 09:53:41 +02:00
parent 29c68b5c95
commit 4866352d63
11 changed files with 0 additions and 563 deletions

View File

@@ -1,71 +0,0 @@
# Copyright Broadcom, Inc. All Rights Reserved.
# SPDX-License-Identifier: APACHE-2.0
FROM docker.io/bitnami/minideb:bookworm AS builder
ARG DOWNLOADS_URL="downloads.bitnami.com/files/stacksmith"
ARG TARGETARCH
ENV OS_ARCH="${TARGETARCH:-amd64}"
COPY prebuildfs /
SHELL ["/bin/bash", "-o", "errexit", "-o", "nounset", "-o", "pipefail", "-c"]
# Install required system packages and dependencies
RUN install_packages ca-certificates curl jq libc6 libgcc-s1 libgomp1 libicu72 libssl3 libstdc++6 netbase openssl rsync sed tzdata
RUN mkdir -p /tmp/bitnami/pkg/cache/ ; cd /tmp/bitnami/pkg/cache/ || exit 1 ; \
COMPONENTS=( \
"aspnet-min-9.0.4-1-linux-${OS_ARCH}-debian-12" \
) ; \
for COMPONENT in "${COMPONENTS[@]}"; do \
if [ ! -f "${COMPONENT}.tar.gz" ]; then \
curl -SsLf "https://${DOWNLOADS_URL}/${COMPONENT}.tar.gz" -O ; \
curl -SsLf "https://${DOWNLOADS_URL}/${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 ; \
rm -rf "${COMPONENT}".tar.gz{,.sha256} ; \
done
RUN /opt/bitnami/scripts/aspnet/postunpack.sh
RUN /opt/bitnami/scripts/generate-spdx.sh libicu72 && mv /opt/bitnami/os/.spdx-os.spdx /opt/bitnami/os/.spdx-os-aspnet-min.spdx
RUN /opt/bitnami/scripts/static/postunpack.sh
RUN /opt/bitnami/scripts/libgcc/postunpack.sh
RUN /opt/bitnami/scripts/generate-spdx.sh libc6 openssl libssl3 libgomp1 openssl libssl3 libgomp libstdc++6 libgcc-s1 && mv /opt/bitnami/os/.spdx-os.spdx /opt/bitnami/os/.spdx-os-libgcc.spdx
RUN /opt/bitnami/scripts/generate-spdx.sh tzdata ca-certificates netbase && mv /opt/bitnami/os/.spdx-os.spdx /opt/bitnami/os/.spdx-os-static.spdx
######
FROM scratch
ARG DOWNLOADS_URL="downloads.bitnami.com/files/stacksmith"
ARG TARGETARCH
ENV OS_ARCH="${TARGETARCH:-amd64}"
LABEL com.vmware.cp.artifact.flavor="sha256:c50c90cfd9d12b445b011e6ad529f1ad3daea45c26d20b00732fae3cd71f6a83" \
org.opencontainers.image.base.name="scratch" \
org.opencontainers.image.created="2025-04-09T13:00:23Z" \
org.opencontainers.image.description="Application packaged by Broadcom, Inc." \
org.opencontainers.image.ref.name="9.0.4-debian-12-r1" \
org.opencontainers.image.title="aspnet-min" \
org.opencontainers.image.vendor="Broadcom, Inc." \
org.opencontainers.image.version="9.0.4"
COPY --from=builder /opt/bitnami/aspnet/.spdx-aspnet-min.spdx /opt/bitnami/aspnet/.spdx-aspnet-min.spdx
COPY --from=builder /opt/bitnami/aspnet/bin/dotnet /opt/bitnami/aspnet/bin/dotnet
COPY --from=builder /opt/bitnami/aspnet/bin/host /opt/bitnami/aspnet/bin/host
COPY --from=builder /opt/bitnami/aspnet/bin/shared /opt/bitnami/aspnet/bin/shared
COPY --from=builder /opt/bitnami/aspnet/licenses /opt/bitnami/aspnet/licenses
COPY --from=builder /opt/bitnami/os/.spdx-os-aspnet-min.spdx /opt/bitnami/os/.spdx-os-aspnet-min.spdx
COPY --from=builder /opt/bitnami/os/.spdx-os-libgcc.spdx /opt/bitnami/os/.spdx-os-libgcc.spdx
COPY --from=builder /opt/bitnami/os/.spdx-os-static.spdx /opt/bitnami/os/.spdx-os-static.spdx
COPY --from=builder /rootfs /
ENV APP_VERSION="9.0.4" \
BITNAMI_APP_NAME="aspnet-min" \
PATH="/opt/bitnami/aspnet/bin:$PATH"
WORKDIR /app
ENTRYPOINT [ "/opt/bitnami/aspnet/bin/dotnet" ]

View File

@@ -1,8 +0,0 @@
{
"aspnet-min": {
"arch": "amd64",
"distro": "debian-12",
"type": "NAMI",
"version": "9.0.4-1"
}
}

View File

@@ -1,2 +0,0 @@
Bitnami containers ship with software bundles. You can find the licenses under:
/opt/bitnami/[name-of-bundle]/licenses/[bundle-version].txt

View File

@@ -1,32 +0,0 @@
#!/bin/bash
# Copyright Broadcom, Inc. All Rights Reserved.
# SPDX-License-Identifier: APACHE-2.0
# shellcheck disable=SC1091,SC1090
set -o errexit
set -o nounset
set -o pipefail
# set -o xtrace # Uncomment this line for debugging purposes
DEST_DIR="/rootfs"
paths_to_mirror=(
# Package 'libicu72'
/usr/lib/*-linux-gnu/libicudata.so*
/usr/lib/*-linux-gnu/libicui18n.so*
/usr/lib/*-linux-gnu/libicutest.so*
/usr/lib/*-linux-gnu/libicutu.so*
/usr/lib/*-linux-gnu/libicuio.so*
/usr/lib/*-linux-gnu/libicuuc.so*
)
for file in "${paths_to_mirror[@]}"; do
if [[ -d "$file" ]]; then
dir="${DEST_DIR}$(dirname $file)"
else
dir=$(dirname "${DEST_DIR}${file}")
fi
mkdir -p "$dir"
cp -a "${file}" "$dir"
done

View File

@@ -1,56 +0,0 @@
#!/bin/bash
set -e
if [ $# -eq 0 ]; then
echo "Usage: $0 package1 package2 ... packageN"
exit
fi
OS_ARCH="${TARGETARCH:-amd64}"
trivy_install_base_dir="/tmp/trivy"
trivy_bin="${trivy_install_base_dir}/bin/trivy"
if [[ ! -f "${trivy_bin}" ]]; then
TRIVY_VERSION="0.60.0-0"
TRIVY_PKG="trivy-${TRIVY_VERSION}-linux-${OS_ARCH}-debian-12"
mkdir -p "${trivy_install_base_dir}"/pkg/cache
cd "${trivy_install_base_dir}"/pkg/cache || exit 1
curl -SsLf "https://${DOWNLOADS_URL}/${TRIVY_PKG}.tar.gz" -O
curl -SsLf "https://${DOWNLOADS_URL}/${TRIVY_PKG}.tar.gz.sha256" -O
sha256sum -c "${TRIVY_PKG}.tar.gz.sha256"
tar -zxf "${TRIVY_PKG}.tar.gz" -C "${trivy_install_base_dir}" --strip-components=3 --no-same-owner --wildcards '*/files'
cd - || exit 1
fi
package_names=$(printf "%s\n" "$@" | jq -R -s -c 'split("\n") | map(select(length > 0))')
"${trivy_bin}" rootfs --format spdx-json / > spdx.json
spdx=$(jq --argjson packages "$package_names" '
.packages |= map(select(.primaryPackagePurpose == "OPERATING-SYSTEM" or (.name as $name | $packages | index($name))))
| del(.packages[].annotations)
| .relationships |= map(select(.relationshipType == "CONTAINS"))
' spdx.json)
licenseRefs=$(echo "$spdx" | jq '[.packages[] | select(.licenseConcluded != null) | .licenseConcluded | scan("LicenseRef-[a-zA-Z0-9]+")]')
ids=$(echo "$spdx" | jq '[.packages[].SPDXID]')
mkdir -p "/opt/bitnami/os"
echo "$spdx" | jq --argjson ids "$ids" '
.relationships = ($ids | map(
if startswith("SPDXRef-OperatingSystem") then
{ "spdxElementId": "SPDXRef-DOCUMENT", "relatedSpdxElement": ., "relationshipType": "DESCRIBES" }
else
{ "spdxElementId": $ids | map(select(startswith("SPDXRef-OperatingSystem")))[0], "relatedSpdxElement": ., "relationshipType": "CONTAINS" }
end
))
' | jq --argjson licenseRefs "$licenseRefs" '
.hasExtractedLicensingInfos |= map(select(.licenseId as $id | $licenseRefs | index($id) != null))
' > "/opt/bitnami/os/.spdx-os.spdx"
rm -rf "${trivy_install_base_dir}"

View File

@@ -1,80 +0,0 @@
#!/bin/bash
# Copyright Broadcom, Inc. All Rights Reserved.
# SPDX-License-Identifier: APACHE-2.0
# shellcheck disable=SC1091,SC1090
set -o errexit
set -o nounset
set -o pipefail
# set -o xtrace # Uncomment this line for debugging purposes
DEST_DIR="/rootfs"
paths_to_mirror=(
# Package 'libc6'
/etc/ld.so.conf.d/
/etc/ld.so.conf
/etc/rpc
/etc/nsswitch.conf
/usr/lib/*linux-gnu/gconv/
/usr/lib/*linux-gnu/libpcprofile.so
/usr/lib/*linux-gnu/libBrokenLocale.so*
/usr/lib/*linux-gnu/libanl.so*
/usr/lib/*linux-gnu/libc.so*
/usr/lib/*linux-gnu/libc_malloc_debug.so*
/usr/lib/*linux-gnu/libdl.so*
/usr/lib/*linux-gnu/libm.so*
/usr/lib/*linux-gnu/libmemusage.so
/usr/lib/*linux-gnu/libnsl.so*
/usr/lib/*linux-gnu/libnss_compat.so*
/usr/lib/*linux-gnu/libnss_dns.so*
/usr/lib/*linux-gnu/libnss_files.so*
/usr/lib/*linux-gnu/libnss_hesiod.so*
/usr/lib/*linux-gnu/libpthread.so*
/usr/lib/*linux-gnu/libresolv.so*
/usr/lib/*linux-gnu/librt.so*
/usr/lib/*linux-gnu/libthread_db.so*
/usr/lib/*linux-gnu/libutil.so*
# Package 'openssl'
/etc/ssl/openssl.cnf
# Package 'libssl3'
/usr/lib/*linux-gnu/ossl-modules
/usr/lib/*linux-gnu/engines-3
/usr/lib/*linux-gnu/libcrypto.so*
/usr/lib/*linux-gnu/libssl.so*
# Package 'libgomp1'
/usr/lib/*linux-gnu/libgomp.so*
# Package 'libstdc++'
/usr/lib/*linux-gnu/libstdc++.so*
# Package 'libgcc-s1'
/usr/lib/*linux-gnu/libgcc_s.so*
)
# Architecture-specific packages
case "$(uname -m)" in
x86_64)
paths_to_mirror+=(
/usr/lib/*-linux-gnu/libmvec.so*
/usr/lib/*-linux-gnu/ld-linux-x86-64.so*
/usr/lib64/ld-linux-x86-64.so*
)
;;
aarch64)
paths_to_mirror+=(
/usr/lib/ld-linux-aarch64.so*
/usr/lib/*-linux-gnu/ld-linux-aarch64.so*
)
;;
esac
for file in "${paths_to_mirror[@]}"; do
if [[ -d "$file" ]]; then
dir="${DEST_DIR}$(dirname $file)"
else
dir=$(dirname "${DEST_DIR}${file}")
fi
mkdir -p "$dir"
cp -a "${file}" "$dir"
done

View File

@@ -1,91 +0,0 @@
#!/bin/bash
# Copyright Broadcom, Inc. All Rights Reserved.
# SPDX-License-Identifier: APACHE-2.0
# shellcheck disable=SC1091,SC1090,SC2034
set -o errexit
set -o nounset
set -o pipefail
# set -o xtrace # Uncomment this line for debugging purposes
DEST_DIR="/rootfs"
paths_to_mirror=(
'/etc/debian_version'
# Package 'netbase'
'/etc/protocols'
'/etc/services'
'/etc/nsswitch.conf'
# Package 'tzdata'
'/etc/localtime'
'/usr/share/zoneinfo'
# Package 'ca-certificates'
'/etc/ssl/certs/ca-certificates.crt'
# System symlinks: /lib -> /usr/lib
'/lib'
)
# Architecture-specific packages
case "$(uname -m)" in
x86_64)
paths_to_mirror+=(
# System symlinks: /lib64 -> /usr/lib64
/lib64
)
;;
esac
# Create '/usr/lib/os-release' and '/etc/os-release' files
mkdir -p "${DEST_DIR}/usr/lib"
cat <<EOF > "${DEST_DIR}/usr/lib/os-release"
PRETTY_NAME="Distroless"
NAME="Debian GNU/Linux"
ID="debian"
VERSION_ID="12"
VERSION="Debian GNU/Linux 12 (bookworm)"
ANSI_COLOR="1;34"
HOME_URL="https://www.vmware.com/products/app-platform/tanzu-application-catalog"
SUPPORT_URL="https://support.broadcom.com"
EOF
# shellcheck disable=SC1091
for file in "${paths_to_mirror[@]}"; do
if [[ -d "$file" ]]; then
dir="${DEST_DIR}$(dirname "$file")"
else
dir=$(dirname "${DEST_DIR}${file}")
fi
mkdir -p "$dir"
cp -a "${file}" "$dir"
done
# /etc/os-release is a symlink to /usr/lib/os-release
ln -s /usr/lib/os-release "${DEST_DIR}/etc/os-release"
# Create '/etc/passwd', '/etc/group' and home directory
USER_NAME="${USER_NAME:-nonroot}"
GROUP_NAME="${GROUP_NAME:-nonroot}"
HOME_DIR="${HOME_DIR:-"/home/${USER_NAME}"}"
# Create the scratch root filesystem
mkdir -p "${DEST_DIR}${HOME_DIR}"
chown 65532:65532 "${DEST_DIR}${HOME_DIR}"
# Using rsync we copy only the empty folder while maintaining ownership and permissions from the original distro
rsync -av -f"+ var/" -f"- *" "/var" "/rootfs/var"
rsync -av -f"+ tmp/" -f"- *" "/tmp" "/rootfs/tmp"
cat <<EOF > "${DEST_DIR}/etc/group"
root:x:0:
daemon:x:6:
${GROUP_NAME}:x:65532:
EOF
cat <<EOF > "${DEST_DIR}/etc/passwd"
root:x:0:0:root:/root:/sbin/nologin
daemon:x:6:6:Daemon User:/dev/null:/bin/false
${USER_NAME}:x:65532:65532:${GROUP_NAME}:${HOME_DIR}:/sbin/nologin
EOF

View File

@@ -1,27 +0,0 @@
#!/bin/sh
# Copyright Broadcom, Inc. All Rights Reserved.
# 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

View File

@@ -1,24 +0,0 @@
#!/bin/sh
# Copyright Broadcom, Inc. All Rights Reserved.
# 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

View File

@@ -1,5 +0,0 @@
rolling-tags:
- "9"
- 9-debian-12
- 9.0.4
- latest

View File

@@ -1,167 +0,0 @@
# Bitnami package for ASP.NET minimal
## What is ASP.NET minimal?
> ASP.NET is an open-source framework for web application development created by Microsoft. This ultra-lightweight option is ideal for security-focused and resource-constrained environments.
[Overview of ASP.NET minimal](https://github.com/dotnet/aspnetcore)
Trademarks: This software listing is packaged by Bitnami. The respective trademarks mentioned in the offering are owned by the respective companies, and use of them does not imply any affiliation or endorsement.
## TL;DR
```console
docker run --name aspnet-min bitnami/aspnet-min:latest
```
## Why use Bitnami Images?
* 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 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 [Notation](https://notaryproject.dev/). [Check this post](https://blog.bitnami.com/2024/03/bitnami-packaged-containers-and-helm.html) to know how to verify the integrity of the images.
* Bitnami container images are released on a regular basis with the latest distribution packages available.
Looking to use ASP.NET minimal in production? Try [VMware Tanzu Application Catalog](https://bitnami.com/enterprise), the commercial edition of the Bitnami catalog.
## Only latest stable branch maintained in the free Bitnami catalog
Starting December 10th 2024, only the latest stable branch of any container will receive updates in the free Bitnami catalog. To access up-to-date releases for all upstream-supported branches, consider upgrading to Bitnami Premium. Previous versions already released will not be deleted. They are still available to pull from DockerHub.
Please check the Bitnami Premium page in our partner [Arrow Electronics](https://www.arrow.com/globalecs/na/vendors/bitnami?utm_source=GitHub&utm_medium=containers) for more information.
## Supported tags and respective `Dockerfile` links
Learn more about the Bitnami tagging policy and the difference between rolling tags and immutable tags [in our documentation page](https://techdocs.broadcom.com/us/en/vmware-tanzu/application-catalog/tanzu-application-catalog/services/tac-doc/apps-tutorials-understand-rolling-tags-containers-index.html).
You can see the equivalence between the different tags by taking a look at the `tags-info.yaml` file present in the branch folder, i.e `bitnami/ASSET/BRANCH/DISTRO/tags-info.yaml`.
Subscribe to project updates by watching the [bitnami/containers GitHub repo](https://github.com/bitnami/containers).
## Get this image
The recommended way to get the Bitnami aspnet-min Docker Image is to pull the prebuilt image from the [Docker Hub Registry](https://hub.docker.com/r/bitnami/aspnet-min).
```console
docker pull bitnami/aspnet-min:latest
```
To use a specific version, you can pull a versioned tag. You can view the [list of available versions](https://hub.docker.com/r/bitnami/aspnet-min/tags/) in the Docker Hub Registry.
```console
docker pull bitnami/aspnet-min:[TAG]
```
If you wish, you can also build the image yourself by cloning the repository, changing to the directory containing the Dockerfile and executing the `docker build` command. Remember to replace the `APP`, `VERSION` and `OPERATING-SYSTEM` path placeholders in the example command below with the correct values.
```console
git clone https://github.com/bitnami/containers.git
cd bitnami/APP/VERSION/OPERATING-SYSTEM
docker build -t bitnami/APP:latest .
```
## Persisting your application
If you remove the container all your data will be lost, and the next time you run the image the database will be reinitialized. To avoid this loss of data, you should mount a volume that will persist even after the container is removed.
For persistence you should mount a directory at the `/app` path. If the mounted directory is empty, it will be initialized on the first run.
```console
docker run \
-v /path/to/aspnet-min-persistence:/app \
bitnami/aspnet-min:latest
```
## Connecting to other containers
Using [Docker container networking](https://docs.docker.com/engine/userguide/networking/), a different server running inside a container can easily be accessed by your application containers and vice-versa.
Containers attached to the same network can communicate with each other using the container name as the hostname.
### Using the Command Line
#### Step 1: Create a network
```console
docker network create aspnet-min-network --driver bridge
```
#### Step 2: Launch the aspnet-min container within your network
Use the `--network <NETWORK>` argument to the `docker run` command to attach the container to the `aspnet-min-network` network.
```console
docker run --name aspnet-min-node1 --network aspnet-min-network bitnami/aspnet-min:latest
```
#### Step 3: Run another containers
We can launch another containers using the same flag (`--network NETWORK`) in the `docker run` command. If you also set a name to your container, you will be able to use it as hostname in your network.
## Logging
The Bitnami aspnet-min Docker image sends the container logs to `stdout`. To view the logs:
```console
docker logs aspnet-min
```
You can configure the containers [logging driver](https://docs.docker.com/engine/admin/logging/overview/) using the `--log-driver` option if you wish to consume the container logs differently. In the default configuration docker uses the `json-file` driver.
## Maintenance
### Upgrade this image
Bitnami provides up-to-date versions of aspnet-min, including security patches, soon after they are made upstream. We recommend that you follow these steps to upgrade your container.
#### Step 1: Get the updated image
```console
docker pull bitnami/aspnet-min:latest
```
#### Step 2: Stop the running container
Stop the currently running container using the command
```console
docker stop aspnet-min
```
#### Step 3: Remove the currently running container
```console
docker rm -v aspnet-min
```
#### Step 4: Run the new image
Re-create your container from the new image.
```console
docker run --name aspnet-min bitnami/aspnet-min:latest
```
## Contributing
We'd love for you to contribute to this container. You can request new features by creating an [issue](https://github.com/bitnami/containers/issues) or submitting a [pull request](https://github.com/bitnami/containers/pulls) with your contribution.
## Issues
If you encountered a problem running this container, you can file an [issue](https://github.com/bitnami/containers/issues/new/choose). For us to provide better support, be sure to fill the issue template.
## License
Copyright &copy; 2025 Broadcom. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
<http://www.apache.org/licenses/LICENSE-2.0>
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.