### Dockerfile Example with Redis Installation Source: https://github.com/chainguard-images/images/blob/main/images/wolfi-base/README.md A Dockerfile example demonstrating how to use wolfi-base as a parent image, update package lists, and install the Redis server. ```dockerfile FROM cgr.dev/chainguard/wolfi-base RUN apk update && apk add redis ENTRYPOINT ["/usr/bin/redis-server"] ``` -------------------------------- ### Start Docker Compose Services Source: https://github.com/chainguard-images/images/blob/main/images/laravel/README.md This command initiates the Docker Compose setup defined in your docker-compose.yaml file, bringing up the Laravel, Nginx, and MariaDB services. ```shell docker composer up ``` -------------------------------- ### Start MinIO Server with Data Volume and Credentials Source: https://github.com/chainguard-images/images/blob/main/images/minio/README.md Start the MinIO server by mounting a local directory as a data volume and setting the root user and password environment variables. ```shell $ docker run -v $(pwd):/data -e MINIO_ROOT_USER=MYNAME -e MINIO_ROOT_PASSWORD=MYPASSWORD cgr.dev/chainguard/minio server /data MinIO Object Storage Server Copyright: 2015-2024 MinIO, Inc. License: GNU AGPLv3 Version: DEVELOPMENT.2024-04-18T19-09-19Z (go1.22.2 linux/arm64) API: http://172.17.0.3:9000 http://127.0.0.1:9000 WebUI: http://172.17.0.3:37953 http://127.0.0.1:37953 Docs: https://min.io/docs/minio/linux/index.html Status: 1 Online, 0 Offline. STARTUP WARNINGS: - The standard parity is set to 0. This can lead to data loss. ``` -------------------------------- ### Helm Version Output Example Source: https://github.com/chainguard-images/images/blob/main/images/helm/README.md Example output from running the 'helm version' command within the container, showing the Helm version and build information. ```shell version.BuildInfo{Version:"v3.13.2", GitCommit:"2a2fb3b98829f1e0be6fb18af2f6599e0f4e8243", GitTreeState:"clean", GoVersion:"go1.21.4"} ``` -------------------------------- ### Clone Example Java Application Source: https://github.com/chainguard-images/images/blob/main/images/maven/README.md Clone the example Spring Boot application repository and navigate into the project directory to begin. ```shell git clone https://github.com/chainguard-dev/learning-labs-java.git cd learning-labs-java/ ``` -------------------------------- ### Verify Git Image Installation Source: https://github.com/chainguard-images/images/blob/main/images/git/README.md Run this command after pulling the image to ensure it is functional and to check the installed Git version. ```shell docker run -it --rm cgr.dev/chainguard/git --version ``` -------------------------------- ### Create New Hugo Site Source: https://github.com/chainguard-images/images/blob/main/images/hugo/README.md Creates a new Hugo site using the quickstart commands within the running Hugo container. ```bash hugo new site quickstart ``` -------------------------------- ### Setting ENTRYPOINT and CMD in apko Source: https://github.com/chainguard-images/images/blob/main/BEST_PRACTICES.md Configure the ENTRYPOINT and CMD for apko-built images. This example sets the ENTRYPOINT to '/usr/bin/node' and CMD to '--help'. ```yaml entrypoint: command: /usr/bin/node cmd: --help ``` -------------------------------- ### Run Redis with Configuration File Source: https://github.com/chainguard-images/images/blob/main/images/redis/README.md Starts a Redis container, mounting a local redis.conf file to the container's /etc/redis.conf path. This allows custom configurations to be applied. ```bash docker run -v $(pwd)/redis.conf:/etc/redis.conf cgr.dev/ORGANIZATION/redis /etc/redis.conf ``` -------------------------------- ### Start Tomcat Server Source: https://github.com/chainguard-images/images/blob/main/images/tomcat/README.md Runs the Tomcat container and displays its log output. This is useful for verifying the server is booting correctly. ```bash docker run cgr.dev/chainguard/tomcat:latest ``` -------------------------------- ### C Hello World Program Example Source: https://github.com/chainguard-images/images/blob/main/images/gcc-glibc/README.md A basic C program that prints 'Hello World!' to the console. This serves as a simple test case for compilation and execution. ```c #include int main() { printf("Hello World!\n"); return 0; } ``` -------------------------------- ### Start Hugo Development Server Source: https://github.com/chainguard-images/images/blob/main/images/hugo/README.md Starts the Hugo development server, binding to all interfaces (0.0.0.0) and using port 8080 for external accessibility. ```bash hugo serve --bind 0.0.0.0 --port 8080 ``` -------------------------------- ### Build and Run glibc-dynamic Example Image Source: https://github.com/chainguard-images/images/blob/main/images/glibc-dynamic/README.md Builds a Docker image using the previously defined Dockerfile and then runs the container. This verifies that the glibc-dynamic base image correctly executes the application. ```shell docker build -t glibc-dynamic-example . docker run --rm glibc-dynamic-example ``` -------------------------------- ### Curl Version Output Example Source: https://github.com/chainguard-images/images/blob/main/images/curl/README.md This is an example of the output you can expect when running the curl --version command within the Chainguard curl container. ```text curl 8.9.0 (x86_64-pc-linux-gnu) libcurl/8.9.0-DEV rustls-ffi/0.13.0/rustls/0.23.4 zlib/1.3.1 brotli/1.1.0 libpsl/0.21.5 nghttp2/1.62.1 Release-Date: 2024-07-24 Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp smtp smtps telnet tftp Features: alt-svc AsynchDNS brotli HSTS HTTP2 HTTPS-proxy IPv6 Largefile libz PSL SSL threadsafe UnixSockets ``` -------------------------------- ### Run Default Nginx Container Source: https://github.com/chainguard-images/images/blob/main/images/nginx/README.md Starts a basic Nginx container. Access the default welcome page at localhost:8080. ```shell docker run -p 8080:8080 cgr.dev/chainguard/nginx:latest ``` -------------------------------- ### Start PostgreSQL Server with Slim Variant Source: https://github.com/chainguard-images/images/blob/main/images/postgres/README.md Starts the PostgreSQL server in detached mode using the -slim variant, mounting the persistent data volume. ```shell docker run -d \ --name postgres-slim \ -v postgres-data:/var/lib/postgresql/data \ --user 65532:65532 \ --entrypoint postgres \ cgr.dev/ORGANIZATION/postgres:18-slim \ -D /var/lib/postgresql/data ``` -------------------------------- ### Start and Kill Nginx Container Source: https://github.com/chainguard-images/images/blob/main/BEST_PRACTICES.md These commands demonstrate starting an Nginx container in detached mode and then immediately killing it to verify signal handling. The kill command should return immediately. ```sh docker run -d --name test cgr.dev/chainguard/nginx 9987b2f37044b72460956f1821bbba0499e0e724d2987f870099976601cf701b docker kill test test ``` -------------------------------- ### Create Go Program for glibc-dynamic Example Source: https://github.com/chainguard-images/images/blob/main/images/glibc-dynamic/README.md Creates a simple Go program that makes an HTTP request, demonstrating a use case for glibc. This program will be compiled and run within the glibc-dynamic container. ```shell cat > main.go < \ --set image.repository=cgr.dev/chainguard/opentelemetry-collector-contrib \ --set image.tag=latest ``` -------------------------------- ### Build the Docker Image Source: https://github.com/chainguard-images/images/blob/main/images/go/README.md Builds the Docker image using the defined Dockerfile and tags it as 'go-greeter'. ```shell docker build . -t go-greeter ``` -------------------------------- ### Get openscap Data Stream Information Source: https://github.com/chainguard-images/images/blob/main/images/openscap/README.md Run this command to retrieve information about a SCAP data stream using the openscap container image. The example uses a specific SCAP data stream file. ```bash docker run --rm cgr.dev/ORGANIZATION/openscap:latest info /usr/share/xml/scap/ssg/content/ssg-chainguard-gpos-ds.xml ``` -------------------------------- ### Run MariaDB with Empty Root Password Source: https://github.com/chainguard-images/images/blob/main/images/mariadb/README.md This command runs the MariaDB container, exposing port 3306 and allowing an empty root password for initial setup. It also shows the initial logs upon starting the database. ```sh $ docker run -p 3306:3306 --rm -e MARIADB_ALLOW_EMPTY_ROOT_PASSWORD=1 cgr.dev/chainguard/mariadb Mon Jan 23 03:47:20 UTC 2023 [Note] [Entrypoint]: Entrypoint script for MariaDB Server started. Mon Jan 23 03:47:20 UTC 2023 [Note] [Entrypoint]: Initializing database files PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER ! To do so, start the server, then issue the following command: '/usr/bin/mysql_secure_installation' which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. See the MariaDB Knowledgebase at https://mariadb.com/kb Please report any problems at https://mariadb.org/jira The latest information about MariaDB is available at https://mariadb.org/. Consider joining MariaDB's strong and vibrant community: https://mariadb.org/get-involved/ Mon Jan 23 03:47:21 UTC 2023 [Note] [Entrypoint]: Database files initialized ... 2023-01-23 3:47:23 0 [Note] Plugin 'FEEDBACK' is disabled. 2023-01-23 3:47:23 0 [Note] InnoDB: Buffer pool(s) load completed at 230123 3:47:23 2023-01-23 3:47:23 0 [Note] Server socket created on IP: '0.0.0.0'. 2023-01-23 3:47:23 0 [Note] Server socket created on IP: '::'. 2023-01-23 3:47:23 0 [Note] mariadbd: ready for connections. Version: '10.6.11-MariaDB' socket: '/run/mysqld/mysqld.sock' port: 3306 MariaDB Server ``` -------------------------------- ### Run the Go Greeter Application (Default) Source: https://github.com/chainguard-images/images/blob/main/images/go/README.md Runs the built Docker image to execute the Go CLI application with default arguments. ```shell docker run go-greeter ``` -------------------------------- ### Install MariaDB Operator with Helm Source: https://github.com/chainguard-images/images/blob/main/images/mariadb/README.md Steps to install the MariaDB operator and its CRDs using Helm, including adding the repository and performing the installation. ```bash helm repo add mariadb-operator https://helm.mariadb.com/mariadb-operator helm install mariadb-operator-crds mariadb-operator/mariadb-operator-crds -n mariadb-system --create-namespace helm install mariadb-operator mariadb-operator/mariadb-operator -n mariadb-system -f values.yaml ``` -------------------------------- ### Multi-stage Dockerfile for Command-line PHP Apps Source: https://github.com/chainguard-images/images/blob/main/images/php/README.md This Dockerfile demonstrates a multi-stage build for command-line PHP applications. It uses a '-dev' variant to install Composer dependencies and then copies them to a smaller production image. ```dockerfile FROM cgr.dev/chainguard/php:latest-dev AS builder COPY . /app RUN cd /app && \ composer install --no-progress --no-dev --prefer-dist FROM cgr.dev/chainguard/php:latest COPY --from=builder /app /app ENTRYPOINT [ "php", "/app/command" ] ``` -------------------------------- ### Install Application Dependencies with Composer Source: https://github.com/chainguard-images/images/blob/main/images/php/README.md Use the `latest-dev` variant with a shared volume to install application dependencies from your host machine using Composer. ```shell docker run --rm -v ${PWD}:/work --entrypoint composer --user root \ cgr.dev/chainguard/php:latest-dev \ install --working-dir=/work ``` -------------------------------- ### Create Custom Index HTML File Source: https://github.com/chainguard-images/images/blob/main/images/nginx/README.md Creates a sample index.html file within the prepared HTML directory. ```shell cat > ~/html/index.html < nginx

Hello World from nginx!

EOF ``` -------------------------------- ### Build Docker Image Source: https://github.com/chainguard-images/images/blob/main/images/go/README.md Builds the Docker image for the web application, tagging it as 'greet-server'. Ensure you are in the directory containing the Dockerfile and source code. ```sh docker build . -t greet-server ``` -------------------------------- ### Build Go Application with CGO Enabled Source: https://github.com/chainguard-images/images/blob/main/images/ko/README.md This command demonstrates how to build a Go application within the ko container, enabling CGO and preserving import paths. It mounts the current directory as a work directory and sets necessary environment variables. The build is configured not to push the image by default. ```bash cd example/ docker run --rm -it \ -v ${PWD}:/work \ --workdir=/work \ -e KO_DOCKER_REPO=example.com \ -e CGO_ENABLED=1 \ cgr.dev/chainguard/ko build ./ \ --push=false \ --preserve-import-paths ``` -------------------------------- ### Initialize a Java Application with Gradle Source: https://github.com/chainguard-images/images/blob/main/images/gradle/README.md From within the Gradle container shell, use the 'gradle init' command to create a new Java application project with default settings. ```shell gradle init --type java-application --use-defaults ``` -------------------------------- ### Go Application Dockerfile for Static Base Image Source: https://github.com/chainguard-images/images/blob/main/BEST_PRACTICES.md This Dockerfile demonstrates building a Go application and then copying the resulting binary into a static base image. It uses multi-stage builds for efficiency. ```dockerfile ARG BASE=cgr.dev/chainguard/static FROM cgr.dev/chainguard/go as build COPY main.go /main.go RUN CGO_ENABLED=0 go build -o /hello /main.go FROM $BASE COPY --from=build /hello /hello CMD ["/hello"] ``` -------------------------------- ### Start Redis Server in Daemon Mode within Container Source: https://github.com/chainguard-images/images/blob/main/images/redis/README.md Once inside the container shell, start the Redis server in the background using the --daemonize yes option. This frees up the terminal for further commands. ```sh /data $ redis-server --daemonize yes ``` -------------------------------- ### Inspect C Static Binary Image Size Source: https://github.com/chainguard-images/images/blob/main/images/static/README.md Displays the size of the Docker image created for the C static binary. This example shows an even smaller image size compared to the Rust example. ```bash docker images c-cgr ``` -------------------------------- ### Initializing Docker for a .NET Application Source: https://github.com/chainguard-images/images/blob/main/images/dotnet/README.md Run this command in your .NET application directory to generate initial Docker configuration files. ```shell docker init ``` -------------------------------- ### Cosign Verification Success Output Source: https://github.com/chainguard-images/images/blob/main/images/cosign/README.md This is an example of the output you will see in stderr upon successful verification of an attestation's identity. ```shell Verification for user/example-image@sha256:545a731e803b917daf44e292b03b427427f8090c4e6c4a704e4c18d56c38539f -- The following checks were performed on each of these signatures: - The cosign claims were validated - Existence of the claims in the transparency log was verified offline - The code-signing certificate was verified using trusted certificate authority certificates Certificate subject: Certificate issuer URL: https://github.com/login/oauth ``` -------------------------------- ### Get PHP Version Source: https://github.com/chainguard-images/images/blob/main/images/laravel/README.md Checks the PHP version running in the latest Laravel container image. This is useful for verifying the environment. ```shell docker run --rm --entrypoint php cgr.dev/chainguard/laravel:latest --version ``` -------------------------------- ### Create Project Directory Source: https://github.com/chainguard-images/images/blob/main/images/go/README.md Creates a new directory for the Go project and changes the current directory to it. ```sh mkdir -p ~/greet-server && cd $_ ``` -------------------------------- ### Create Project Directory Source: https://github.com/chainguard-images/images/blob/main/images/go/README.md Creates a new directory for the Go project and changes the current directory to it. ```shell mkdir -p ~/go-greeter && cd $_ ``` -------------------------------- ### Pulling Chainguard Images Source: https://github.com/chainguard-images/images/blob/main/README.md Demonstrates how to pull the 'static' and 'nginx' Chainguard Images using Docker. Ensure you have Docker installed and configured. ```sh docker pull cgr.dev/chainguard/static:latest docker pull cgr.dev/chainguard/nginx:latest ``` -------------------------------- ### Run Diagnostic Commands within the Container Source: https://github.com/chainguard-images/images/blob/main/images/min-toolkit-debug/README.md Examples of common network diagnostic commands that can be run from the interactive shell of the min-toolkit-debug container. ```shell bash-5.2# ss -tunlp ``` ```shell bash-5.2# dig +short google.com ``` ```shell bash-5.2# traceroute google.com ``` -------------------------------- ### View MinIO Help Information Source: https://github.com/chainguard-images/images/blob/main/images/minio/README.md Run the MinIO container without arguments to display its help information, including available commands and flags. ```shell $ docker run cgr.dev/chainguard/minio NAME: minio High Performance Object Storage DESCRIPTION: Build high performance data infrastructure for machine learning, analytics and application data workloads with MinIO USAGE: minio [FLAGS] COMMAND [ARGS...] COMMANDS: server start object storage server FLAGS: --certs-dir value, -S value path to certs directory (default: "/root/.minio/certs") --quiet disable startup and info messages --anonymous hide sensitive information from logging --json output logs in JSON format --help, -h show help --version, -v print the version VERSION: DEVELOPMENT.2023-03-24T21-41-23Z ``` -------------------------------- ### Create Docker Volume for PostgreSQL Data Source: https://github.com/chainguard-images/images/blob/main/images/postgres/README.md Creates a Docker volume to persist PostgreSQL data, essential for the slim variant setup. ```shell docker volume create postgres-data ``` -------------------------------- ### Initialize Git Repository Source: https://github.com/chainguard-images/images/blob/main/images/hugo/README.md Initializes an empty Git repository in the current directory for version control. ```bash git init ``` -------------------------------- ### Run the Newly Built Application Source: https://github.com/chainguard-images/images/blob/main/images/gradle/README.md After initializing a project, use the 'gradle run' task to execute the application from within the container. ```shell gradle run ``` -------------------------------- ### Check CUDA Compiler Version Source: https://github.com/chainguard-images/images/blob/main/images/pytorch/TESTING.md Verify the installed CUDA compiler version using the nvcc command. This confirms the CUDA toolkit is accessible. ```bash $ nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2023 NVIDIA Corporation Built on Mon_Apr__3_17:16:06_PDT_2023 Cuda compilation tools, release 12.1, V12.1.105 Build cuda_12.1.r12.1/compiler.32688072_0 ``` -------------------------------- ### Test Helm Image Version Source: https://github.com/chainguard-images/images/blob/main/images/helm/README.md Executes the 'helm version' command within the Chainguard Helm container image to verify its installation and version. ```shell docker run --rm cgr.dev/chainguard/helm version ``` -------------------------------- ### Build Rust Static Binary with Chainguard Static Image Source: https://github.com/chainguard-images/images/blob/main/images/static/README.md Demonstrates building a Rust static binary using a multi-stage Dockerfile. The first stage builds the Rust binary, and the second stage copies it into the Chainguard static image. This results in a small, self-contained image. ```Dockerfile FROM cgr.dev/chainguard/rust as build RUN echo 'fn main() { println!("Hello Rust users!"); }' > hello.rs RUN rustc -C target-feature=+crt-static hello.rs FROM cgr.dev/chainguard/static:latest COPY --from=build /work/hello /hello CMD ["/hello"] ``` -------------------------------- ### Valkey CLI Operations Source: https://github.com/chainguard-images/images/blob/main/images/valkey/README.md Demonstrates basic Valkey operations using the valkey-cli, including setting a key-value pair, saving the data, and retrieving the value. ```bash $ valkey-cli set foo bar OK $ valkey-cli save OK $ valkey-cli get foo "bar" ``` -------------------------------- ### Create the Kubernetes Pod Source: https://github.com/chainguard-images/images/blob/main/images/kubectl/README.md Apply the Pod configuration to your Kubernetes cluster to create the pod. This will pull the specified Chainguard Image and start the container. ```sh kubectl create -f kubectl.yaml ``` -------------------------------- ### Dockerfile for Building and Running a .NET Application Source: https://github.com/chainguard-images/images/blob/main/images/dotnet/README.md This Dockerfile uses a multi-stage build. It first builds the application using the SDK image and then copies the compiled application to the Runtime image for execution. Replace 'ORGANIZATION' with your organization's name. ```Dockerfile FROM cgr.dev/ORGANIZATION/dotnet-sdk:latest AS build COPY --chown=nonroot:nonroot . /source WORKDIR /source RUN dotnet publish --use-current-runtime --self-contained false -o Release # If you are running an ASPNET project, you can instead pull our ASPNET image cgr.dev/ORGANIZATION/aspnet-runtime:latest FROM cgr.dev/ORGANIZATION/dotnet-runtime:latest AS final WORKDIR / COPY --from=build source . ENTRYPOINT ["dotnet", "Release/dotnet.dll"] ``` -------------------------------- ### Start an Interactive Debugging Session Source: https://github.com/chainguard-images/images/blob/main/images/min-toolkit-debug/README.md Launches an interactive bash shell within the min-toolkit-debug container. This is useful for running diagnostic commands directly. ```shell docker run --rm -it --entrypoint=bash cgr.dev/ORGANIZATION/min-toolkit-debug:latest ``` -------------------------------- ### Get Connected GPU Name Source: https://github.com/chainguard-images/images/blob/main/images/pytorch/TESTING.md Retrieve the name of the connected GPU device using PyTorch. This helps identify the specific hardware being used. ```python import torch;print(torch.cuda.get_device_name(0)) ``` -------------------------------- ### Initialize Database with Slim Dev Variant Source: https://github.com/chainguard-images/images/blob/main/images/postgres/README.md Initializes the PostgreSQL database using the -slim-dev variant, specifying the data directory, locale, and encoding. ```shell docker run --rm \ -v postgres-data:/var/lib/postgresql/data \ --user 65532:65532 \ --entrypoint initdb \ cgr.dev/ORGANIZATION/postgres:18-slim-dev \ -D /var/lib/postgresql/data --locale=C --encoding=UTF8 ``` -------------------------------- ### Run PyTorch Docker Image Source: https://github.com/chainguard-images/images/blob/main/images/pytorch/TESTING.md Execute the PyTorch Docker image with GPU support enabled. Ensure Docker Engine is installed prior to running this command. ```bash docker run --rm -i -t \ --gpus all \ cgr.dev/chainguard/pytorch:latest ``` -------------------------------- ### Create Project Directory Source: https://github.com/chainguard-images/images/blob/main/images/node/README.md Sets up the directory structure for a new Node.js project and changes the current directory to the project root. ```bash mkdir -p ~/node-reverse/bin && cd ~/node-reverse ``` -------------------------------- ### Run Docker Container Source: https://github.com/chainguard-images/images/blob/main/images/go/README.md Runs the built 'greet-server' Docker image, mapping port 8080 on the host to port 8080 in the container. This makes the web application accessible. ```sh docker run -p 8080:8080 greet-server ``` -------------------------------- ### Run stunnel Container Source: https://github.com/chainguard-images/images/blob/main/images/stunnel/README.md This command runs the stunnel container. The image sets the stunnel binary as the entrypoint. You will need to provide a configuration file. ```bash $ docker run cgr.dev/chainguard/stunnel:latest Initializing inetd mode configuration stunnel 5.70 on aarch64-unknown-linux-gnu platform Compiled with OpenSSL 3.1.1 30 May 2023 Running with OpenSSL 3.1.2 1 Aug 2023 Threading:PTHREAD Sockets:POLL,IPv6 TLS:ENGINE,OCSP,PSK,SNI Global options: chroot = directory to chroot stunnel process EGD = path to Entropy Gathering Daemon socket engine = auto|engine_id engineCtrl = cmd[:arg] engineDefault = TASK_LIST foreground = yes|quiet|no foreground mode (don't fork, log to stderr) log = append|overwrite log file output = file to append log messages pid = pid file RNDbytes = bytes to read from random seed files RNDfile = path to file with random seed data RNDoverwrite = yes|no overwrite seed datafiles with new random data syslog = yes|no send logging messages to syslog Service-level options: accept = [host:]port accept connections on specified host:port CAengine = engine-specific CA certificate identifier for 'verify' option CApath = CA certificate directory for 'verify' option CAfile = CA certificate file for 'verify' option cert = certificate chain checkEmail = peer certificate email address checkHost = peer certificate host name pattern checkIP = peer certificate IP address ciphers = permitted ciphers for TLS 1.2 or older ciphersuites = permitted ciphersuites for TLS 1.3 client = yes|no client mode (remote service uses TLS) config = command[:parameter] to execute connect = [host:]port to connect CRLpath = CRL directory CRLfile = CRL file curves = ECDH curve names debug = [facility].level (e.g. daemon.info) delay = yes|no delay DNS lookup for 'connect' option engineId = ID of engine to read the key from engineNum = number of engine to read the key from exec = file execute local inetd-type program execArgs = arguments for 'exec' (including $0) failover = rr|prio failover strategy ident = username for IDENT (RFC 1413) checking include = directory with configuration file snippets key = certificate private key local = IP address to be used as source for remote connections logId = connection identifier type OCSP = OCSP responder URL ... ``` -------------------------------- ### Run PostgreSQL Container with Persistent Data Source: https://github.com/chainguard-images/images/blob/main/images/postgres/README.md Starts a PostgreSQL container in detached mode, mounting a local volume to persist database data. Requires a POSTGRES_PASSWORD. ```sh docker run --rm -d -v $PWD/data:/var/lib/postgresql/data -e POSTGRES_PASSWORD=password -ti --name postgres-test cgr.dev/ORGANIZATION/postgres:latest ``` -------------------------------- ### Access Container Shell for Redis Testing Source: https://github.com/chainguard-images/images/blob/main/images/redis/README.md Starts an interactive Redis container and opens a shell. This allows direct interaction with the container's filesystem and processes. ```sh docker run -it --entrypoint sh cgr.dev/ORGANIZATION/redis ```