This topic lists and describes the Dockerfile.x64 file from the Docker demonstration for the COBOL Server base image. The Dockerfile is listed in its entirety and a following table describes the various Dockerfile commands. The line numbers in the listings of the Dockerfile have been added to aid readability. They are not present in the supplied Dockerfile.
001 # Copyright (C) Micro Focus 2018. All rights reserved.
002
003 ARG DTAGVER=
004 FROM microfocus/cobolserver:${DTAGVER}
005
006 # Copy the powershell script to the root directory
007 ADD convsetx.ps1 "c:\convsetx.ps1"
008
009 # Use the powershell script to convert the property environment
010 # space into a bat file with SETX commands to ensure the
011 # environment always has the right PATH/CLASSPATH to execute
012 # COBOL programs
013 RUN cd %COBSRV_LOC% && \
014 bin64\cblpromp.exe -J >env.prop && \
015 powershell -file "c:\convsetx.ps1" >envsetx.bat && \
016 envsetx.bat && \
017 del envsetx.bat && \
018 del env.prop && \
019 del "c:\convsetx.ps1"
020
021 # cleanup
022 ENV COBSRV_LOC ""
The commands on the lines in this Dockerfile are as follows:
| Lines | Description |
|---|---|
| 003 | Defines a build argument passed by the docker build command. |
| 005 | Specifies that the base image to use is the image built from Dockerfile. |
| 007 | Copies the convsetx.ps1 Powershell script to the image's filesystem. |
| 013 - 019 | Run a series of concatenated Windows commands to ensure that all environment variables set by the COBOL command prompt are available to applications in this image. |
| 022 | Resets the environment variable used to hold name of the directory into which COBOL Server was installed. |