You use the DB_CREATE_METHOD property to specify how you want your database to be created in your custom container image. There are four options to build your container image:
  • If you want to create a database, then set the DB_CREATE_METHOD property to customDB. You must have either one of the following:
    • A database structure file (.st)
    • A data definition file (.df)
    • A .df file and database extents (.d)
    • A .st, a .df, and .d files in the artifacts subdirectory
  • If you want a database restored from an existing database backup file, then set the DB_CREATE_METHOD property to backupDB. To use this method, you need a database backup file with the .bck extension in the artifacts subdirectory of the build directory. Incremental backups are not supported.
  • If you want your database to be a copy of one of the sample databases that are shipped with the OpenEdge database, then set the:
    • DB_CREATE_METHOD property to sampleDB
    • DB_NAME property to the name you want to use for the database that will be created
    • SAMPLE_DB_NAME property to the name of the sample database that you want to use
  • If you want your database to be a copy of one of your current databases that are in the Docker host filesystem, then:
    • Set the DB_CREATE_METHOD property to externalDB.
    • Specify the location of the existing database using the EXTERNAL_DATABASE_PATH property.
    Note: In order to use this method, you must have root user privileges.
In each of the four methods, you must provide:
  • A custom name for the database to be created using the DB_NAME property.
  • The name and tag of the base database Docker container image using the DB_DOCKER_IMAGE_NAME and the DB_DOCKER_IMAGE_TAG properties. The values you provide should correspond to one of the two base images.
  • The name and tag of the custom image that you are building using the NEW_DB_DOCKER_IMAGE_NAME and the NEW_DB_DOCKER_IMAGE_TAG properties. The default values are oedb1 and latest.
  • The name and tag of the compatible JDK image using the JDK_DOCKER_IMAGE_NAME and the JDK_DOCKER_IMAGE_TAG properties.
Finally, you can change the JDK location inside the container to a different value by modifying the JDK_DOCKER_IMAGE_JAVA_LOCATION property value.
Note: To use OpenEdge database Docker container images, you must work with OpenEdge databases that use relative paths and that do not use any absolute paths.