instruction: Create a Dockerfile for fundamentals
output: ```dockerfile
  from
  a
  Dockerfile and a context.What is a build context?The build context is the set of files that your build can access.
  The positional argument that you pass to the build command specifies the
  context that you want to use for the build:
  
  $ docker build [OPTIONS] PATH | URL | -
   ^^^^^^^^^^^^^^
  You can pass any of the following inputs as the context for a build:The relative or absolute path to a local directoryA remote URL of a Git repository, tarball, or plain-text fileA plain-text file or tarball piped to the docker build command through standard inputFilesystem contextsWhen your build context is a local directory, a remote Git repository, or a tar
  file, then that becomes the set of files that the builder can access during the
  build. Build instructions such as COPY and ADD can refer to any of the
  files and directories in the context.A filesystem build context is processed recursively:When you specify a local directory or a tarball, all subdirectories are includedWhen you specify a remote Git repository, the repository and all submodules are includedFor more information about the different types of filesystem contexts that you
  can use with your builds, see:Local filesGit repositoriesRemote tarballsText file contextsWhen your build context is a plain-text file, the builder interprets the file
  as a Dockerfile. With this approach, the build doesn't use a filesystem context.For more information, see empty build context.Local contextTo use a local build context, you can specify a relative or absolute filepath
  to the docker build command. The following example shows a build command that
  uses the current directory (.) as a build context:
  
  $ docker build .
  ...
  #16 [internal] load build context
  #16 sha256:23ca2f94460dcbaf5b3c3edbaaa933281a4e0ea3d92fe295193e4df44dc68f85
  #16 transferring context: 13.16MB 2.2s done
  ...
  This makes files and directories in the current working directory available to
  the builder. The builder loads the files it needs
  ```