Skip to content

Latest commit

 

History

History
 
 

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

README.md

Ubuntu container image

This container image includes Ubuntu version 20.04 contains the following packages:

  • OpenSSL version: 1.0.2u build with FIPS 140-2 compliant OpenSSL module version: 2.0.16
  • Ruby version: 2.5 compiled against the FIPS 140-2 compliant OpenSSL module
  • Postgres client version: 12-12.2 compiled against the FIPS 140-2 compliant OpenSSL module
  • Bundler version: 2.1.4

Build steps

Assumptions

  1. Current directory is directory where this repository is cloned
  2. Docker version is 17.05 or higher

Ubuntu container image will be built with a three-stage process:

  1. the first stage builds the OpenSSL compiled with the FIPS 140-2 compliant OpenSSL module.
  2. the second stage builds the Ruby and Postgres client packages.
  3. the third stage ship the results of both stages, without the penalty of the build-chain and tooling.

Docker images

Image name Description
openssl-builder Install OpenSSL with the FIPS 140-2 compliant module
postgres-client-builder Install Postgres client
ubuntu-ruby-builder Install Ruby version
ubuntu-ruby-fips Final image

Steps

Create image for openssl-builder:

./openssl-builder/build.sh

Create images for ubuntu-ruby-builder and postgres-client-builder:

./postgres-client-builder/build.sh
./ubuntu-ruby-builder/build.sh

Create the final image

$IMAGE_NAME is assumed to be the required name of Docker image

$IMAGE_TAG is assumed to be the required tag of Docker image

docker build --build-arg "OPENSSL_BUILDER_TAG=1.0.2u-fips-2.0.16" -t "$IMAGE_NAME":"$IMAGE_TAG" ubuntu-ruby-fips