Security
Building a Chef InSpec Execution Environment with a Docker Container
→ 日本語版を読むNo effort required. There is an official Dockerfile on GitHub.
The base image is Ubuntu 22.04, which is personally very convenient (lightweight base images tend to be missing various packages, which gets annoying).
inspec/Dockerfile at main · inspec/inspec · GitHub
I modified the ENTRYPOINT and removed CMD.
This gets InSpec running on your local PC in no time. Very handy.
FROM --platform=linux/amd64 ubuntu:22.04
LABEL maintainer="Chef Software, Inc. <docker@chef.io>"
ARG VERSION=5.22.3
ARG CHANNEL=stable
ENV PATH=/opt/inspec/bin:/opt/inspec/embedded/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# Run the entire container with the default locale to be en_US.UTF-8
RUN apt-get update && \
apt-get install -y locales && \
locale-gen en_US.UTF-8 && \
update-locale LANG=en_US.UTF-8 && \
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
ENV LANG=en_US.UTF-8 \
LANGUAGE=en_US:en \
LC_ALL=en_US.UTF-8
RUN mkdir -p /share
RUN apt-get update && \
apt-get install -y wget rpm2cpio cpio && \
wget "http://packages.chef.io/files/${CHANNEL}/inspec/${VERSION}/el/7/inspec-${VERSION}-1.el7.x86_64.rpm" -O /tmp/inspec.rpm && \
rpm2cpio /tmp/inspec.rpm | cpio -idmv && \
rm -rf /tmp/inspec.rpm
# Install any packages that make life easier for an InSpec installation
RUN apt-get install -y git
ENTRYPOINT ["/bin/bash"]
VOLUME ["/share"]
WORKDIR /share
That's all.