Dockerfile Example
Jump to navigation
Jump to search
Internal
Example
# # Example of very simple Dockerfile based on minimalistic BusyBox base image # Please read through each comment to gain a better understanding of what this Dockerfile does # # # Docker will pull from docker.io if base image does not already exist in local Docker repo # FROM busybox MAINTAINER "Nova Ordis" # # The LABEL instruction adds metadata to an image. A LABEL is a key-value pair. # LABEL version="1.0" \ description="A project that creates a custom Docker image based on a BusyBox base image" # # Define two environment variables: NAME and TARGET_DIR # Value of env variables can be modified at container startup using -e parameter # ENV NAME="NovaOrdis OpenShift Test Environment" \ TARGET_DIR="/var/novaordis" # # Docker is to execute all subsequent commands in this file as BusyBox's root user # USER root # # /usr/local/bin/ is included in the root user's $PATH, so copy our shell script to this directory # COPY run-loop.sh /usr/local/bin/run-loop.sh # # Ensure that shell script added to image is set as executable # RUN chmod 755 /usr/local/bin/run-loop.sh # # Create directory and define it as a container mount point. Our shell script will write output # to local filesystem at this mount point. # RUN mkdir $TARGET_DIR VOLUME $TARGET_DIR # # At startup, this container should run a single command. Our script uses the command line # parameters passed as part of $NAME env var # CMD /usr/local/bin/run-loop.sh $NAME