/
DirectorySecurity AdvisoriesPricing
Sign inRequest a trial
Directory
clickhouse-fips logoFIPS

clickhouse-fips

Last changed

Request a free trial

Contact our team to test out this image for free. Please also indicate any other images you would like to evaluate.

Request trial
Tags
Overview
Comparison
Provenance
Specifications
SBOM
Vulnerabilities
Advisories

Chainguard Container for clickhouse-fips

Clickhouse is the fastest and most resource efficient open-source database for real-time apps and analytics, built with FIPS 140-3 compliant cryptographic modules.

Chainguard Containers are regularly-updated, secure-by-default container images.

Download this Container Image

For those with access, this container image is available on cgr.dev:

docker pull cgr.dev/ORGANIZATION/clickhouse-fips:latest

Be sure to replace the ORGANIZATION placeholder with the name used for your organization's private repository within the Chainguard Registry.

Compatibility Notes

This image is built with FIPS 140-3 compliant cryptographic modules and follows FIPS compliance requirements. The image includes:

  • OpenSSL configured in FIPS mode
  • ClickHouse built with FIPS-compliant cryptographic libraries
  • Removal of non-FIPS compliant ciphers and algorithms

The default Clickhouse listen_host is 127.0.0.1 and port is 8123.

Getting Started

Quick Start

The entrypoint for the clickhouse-fips Chainguard container is /usr/bin/clickhouse. Commands run as part of docker run or a CMD statement in a Dockerfile will be passed as arguments to clickhouse.

To run with Docker and allow empty passwords:

docker run -d --ulimit nofile=262144:262144 cgr.dev/ORGANIZATION/clickhouse-fips:latest server

By default, ClickHouse will be accessible only via the Docker network and will run as the default user without password.

Configuration

Users and Directories

By default, this image runs as a non-root user named clickhouse with a uid of 101 and a home directory of /home/clickhouse.

Environment Variable Substitution

Environmental variables require the /entrypoint.sh script which is not run by default. You will need to modify and mount configuration files for any values that are not editable via CLI options.

Volume Mounts

Typically you may want to mount the following folders inside your container to achieve persistency:

  • /var/lib/clickhouse/ - main folder where ClickHouse stores the data
  • /var/log/clickhouse-server/ - logs
  • /etc/clickhouse-server/config.d/*.xml - files with server configuration adjustments
  • /etc/clickhouse-server/users.d/*.xml - files with user settings adjustments
  • /docker-entrypoint-initdb.d/ - folder with database initialization scripts
docker run -d \
    -v $(realpath ./ch_data):/var/lib/clickhouse/ \
    -v $(realpath ./ch_logs):/var/log/clickhouse-server/ \
    --ulimit nofile=262144:262144 cgr.dev/ORGANIZATION/clickhouse-fips:latest server

Note: If adding user and server configuration adjustments please ensure to add the --config-file CLI option.

Docker Compose Example

This docker-compose.yaml sets up a Clickhouse database with a default database and user, using the FIPS-compliant image:

version: "3.7"
services:
  clickhouse:
    image: cgr.dev/ORGANIZATION/clickhouse-fips:latest
    restart: unless-stopped
    entrypoint: /usr/bin/clickhouse-server -- --listen_host 0.0.0.0
    working_dir: /home/clickhouse
    ports:
      - 8123:8123
    volumes:
      - ./data/clickhouse:/var/lib/clickhouse
      - ./logs/clickhouse:/var/log/clickhouse-server
    networks:
      - wolfi

networks:
  wolfi:
    driver: bridge

FIPS-Compliant SSL/TLS Configuration

For production use with FIPS compliance, you'll want to configure ClickHouse with proper SSL/TLS settings. Create a FIPS-compliant ClickHouse configuration:

<clickhouse>
    <http_port>8123</http_port>
    <https_port>8443</https_port>
    <openSSL>
        <server>
            <certificateFile>/certs/server.crt</certificateFile>
            <privateKeyFile>/certs/server.key</privateKeyFile>
            <verificationMode>strict</verificationMode>
            <protocols>TLSv1.2,TLSv1.3</protocols>
            <preferServerCiphers>true</preferServerCiphers>
        </server>
    </openSSL>
    <listen_host>0.0.0.0</listen_host>
    
    <!-- Configure data paths for your environment -->
    <path>/var/lib/clickhouse</path>
    <tmp_path>/var/lib/clickhouse/tmp</tmp_path>
    <user_files_path>/var/lib/clickhouse/user_files</user_files_path>
    <format_schema_path>/var/lib/clickhouse/format_schemas</format_schema_path>
    
    <!-- Configure profiles based on your requirements -->
    <profiles>
        <!-- Add your profiles here -->
    </profiles>
    
    <!-- Configure users and authentication -->
    <users>
        <!-- Add your users and authentication settings here -->
    </users>
    
    <!-- Configure quotas as needed -->
    <quotas>
        <!-- Add your quota settings here -->
    </quotas>
    
    <!-- Configure logging level and output -->
    <logger>
        <!-- Add your logging configuration here -->
    </logger>
    
    <send_crash_reports>
        <enabled>false</enabled>
    </send_crash_reports>
</clickhouse>

Run ClickHouse with the FIPS-compliant configuration and your certificates:

docker run -d --name clickhouse-fips \
  -v /path/to/fips-config.xml:/etc/clickhouse-server/config.xml \
  -v /path/to/certificates:/certs \
  -p 8123:8123 -p 8443:8443 \
  cgr.dev/ORGANIZATION/clickhouse-fips:latest server --config-file /etc/clickhouse-server/config.xml

Replace /path/to/certificates with the directory containing your server.crt and server.key files.

FIPS Verification

To verify FIPS mode is enabled:

docker run -it --rm cgr.dev/ORGANIZATION/clickhouse-fips:latest-dev sh -c "cat /proc/sys/crypto/fips_enabled"

The command should return 1 indicating FIPS mode is enabled.

Documentation and Resources

For more advanced configuration, please refer to ClickHouse's official documentation.

What are Chainguard Containers?

Chainguard Containers are minimal container images that are secure by default.

In many cases, the Chainguard Containers tagged as :latest contain only an open-source application and its runtime dependencies. These minimal container images typically do not contain a shell or package manager. Chainguard Containers are built with Wolfi, our Linux undistro designed to produce container images that meet the requirements of a more secure software supply chain.

The main features of Chainguard Containers include:

For cases where you need container images with shells and package managers to build or debug, most Chainguard Containers come paired with a -dev variant.

Although the -dev container image variants have similar security features as their more minimal versions, they feature additional software that is typically not necessary in production environments. We recommend using multi-stage builds to leverage the -dev variants, copying application artifacts into a final minimal container that offers a reduced attack surface that won’t allow package installations or logins.

Learn More

To better understand how to work with Chainguard Containers, please visit Chainguard Academy and Chainguard Courses.

In addition to Containers, Chainguard offers VMs and Libraries. Contact Chainguard to access additional products.

Trademarks

This software listing is packaged by Chainguard. The trademarks set forth in this offering are owned by their respective companies, and use of them does not imply any affiliation, sponsorship, or endorsement by such companies.

Licenses

Chainguard container images contain software packages that are direct or transitive dependencies. The following licenses were found in the "latest" tag of this image:

  • Apache-2.0

  • GCC-exception-3.1

  • GPL-3.0-or-later

  • LGPL-2.1-or-later

  • MIT

  • MPL-2.0

For a complete list of licenses, please refer to this Image's SBOM.

Software license agreement

Compliance

This is a FIPS validated image for FedRAMP compliance.

This image is STIG hardened and scanned against the DISA General Purpose Operating System SRG with reports available.

Learn more about STIGsGet started with STIGs

Related images
clickhouse logo
clickhouse

Category
FIPS
STIG

Safe Source for Open Sourceâ„¢
Contact us
© 2025 Chainguard. All Rights Reserved.
Private PolicyTerms of Use

Products

Chainguard ContainersChainguard LibrariesChainguard VMs