Normal Docker Builds
With Docker, we can use Dockerfiles
to create custom Docker images. As we discussed in Chapter 2, Getting Started with Dockerfiles, a Dockerfile
is a text file that contains instructions on how to create a Docker image. However, it is critical to have minimal-sized Docker images when running them in production environments. This allows developers to speed up their Docker containers' build and deployment times. In this section, we will build a custom Docker image to observe the problems associated with the normal Docker build process.
Consider an example where we build a simple Golang application. We are going to deploy a hello world
application written in Golang using the following Dockerfile
:
# Start from latest golang parent image FROM golang:latest # Set the working directory WORKDIR /myapp # Copy source file from current directory to container COPY helloworld.go . # Build the application RUN go build -o helloworld . # Run the application ENTRYPOINT...