docker-images Documentation

Official source of container configurations, images, and examples for Oracle products and projects

RAW Doc

Docker & Self-Hosted Deployment Verified OCI

Deploy docker-images on any server, homelab, or cloud container platform.

1-Click Terminal Command
bash (docker run)
docker run -d --name docker-images -p 1389:1389 --restart always ${DOCKER_USER}/${DOCKER_REPO}:12.2.1.4.0b
Configured Services & Ports
โš™๏ธ oud12c
image: ${DOCKER_USER}/${DOCKER_REPO}:12.2.1.4.0b
๐Ÿ”Œ Ports: 1389, 1636, 4444
docker-compose.yml
yaml (docker-compose.yml)
# -----------------------------------------------------------------------
# Trivadis AG, Business Development & Support (BDS)
# Saegereistrasse 29, 8152 Glattbrugg, Switzerland
# -----------------------------------------------------------------------
# Name.......: docker-compose.yml
# Author.....: Stefan Oehrli (oes) [email protected]
# Editor.....: Stefan Oehrli
# Date.......: 2019.10.12
# Revision...: --
# Purpose....: Simple compose file to create an OUD container
# Notes......: --
#
# Reference..: https://github.com/oehrlis/oudbase
# License....: GPL-3.0+
# -----------------------------------------------------------------------
# Modified...:
# see git revision history with git log for more information on changes
# -----------------------------------------------------------------------
version: '3'
services:

# single tenant database
  oud12c:
    image: ${DOCKER_USER}/${DOCKER_REPO}:12.2.1.4.0b
    container_name: oud12c
    hostname: oud12c
    restart: unless-stopped
    network_mode: bridge
    volumes:
      - ${DOCKER_VOLUME_BASE}/oud12c:/u01
      - ./config:/u01/config
    ports:
      - "1389"
      - "1636"
      - "4444"
    environment:
      INSTANCE_INIT: /u01/config
      OUD_INSTANCE: oud_docker
      SAMPLE_DATA: 'TRUE'
      BASEDN: dc=example,dc=com
# - EOF -----------------------------------------------------------------

File: README.md

Docker Images from Oracle

This repository contains Dockerfiles
and samples to build Docker images for
Oracle commercial products and Oracle sponsored open source projects.

Container Images on GitHub

These images will require you to download any required Oracle commercial
software before installation. If you want commercial software downloaded for you,
view Pre-Built Images with Commercial Software.

Oracle Commercial Products

Oracle Sponsored Open Source Projects

Community Contributions

Archived Projects

Pre-Built Images with Commercial Software

These sources already contain Oracle commercial software and require license
acceptance prior to download:

Support

For support and certification information, please consult the documentation
for each product.

For support, bug reporting and feedback about the provided Dockerfiles, please
open an issue on GitHub.

If you need general support with running containers on Oracle Linux, you can submit
a question under the Containers and Orchestration
category of the Applications and Infrastructure Community of Oracle Communities.

Contributing

This project welcomes contributions from the community. Before submitting a pull request, please review our contribution guide

Security

Please consult the security guide for our responsible security vulnerability disclosure process

License

Copyright (c) 2019, 2023 Oracle and/or its affiliates.

Released under the Universal Permissive License v1.0 as shown at
https://oss.oracle.com/licenses/upl/.


File: Archive/OracleTuxedo/art_workbench_tm/README.md

Tuxedo Application Rehosting Workbench and Test manager on Docker

Introduction

This folder contains the information of how to use [Tuxedo ART Workbench and Test Manager](http://docs.oracle.com/cd/E72452_01/artwb/docs1222/index.html, http://docs.oracle.com/cd/E72452_01/arttm/docs1222/index.html) with Docker.

Contents

This folder contains dockerfile based on the Oracle Tuxedo image, in which it has installation of Eclipse, Tuxedo Application Rehosting Workbench and Test manager.

##Prerequisite

  1. Use btrfs with docker:
    With big image size, it is better to use btrfs with docker, please follow the link below to set Docker using btrfs.
    https://docs.docker.com/engine/userguide/storagedriver/btrfs-driver/#configure-btrfs-on-sles

How to build and run
Pre-installation:

  1. Download the binaries and copy them to pwd/bin
    1. Download all the files from this GitHub repository
    2. Download the binary of ART Workbench and Test Manager
    3. Download Eclipse
    4. Optionally download Tuxedo, Tuxedo ART Workbench and Tuxedo ART Test Manager patches

To use

Before you run buildDockerImage.sh, if proxy is needed to access network, you need to set environment variables at first: http_proxy, https_proxy, ftp_proxy, no_proxy
$ ./buildDockerImage.sh -v 12.2.2
Or
$ docker build -t oracle/tuxedoartwkbtm:12.2.2 .
Note, before you run buildDockerImage.sh, if your Tuxedo ART was other than 12.2.2, you need change above command according to version.

You should end up with a docker image tagged oracle/tuxedoartwkbtm:, version is Tuxedo ART version number you may modify in buildDockerImage.sh.

To run

You can then start the image in a new container with: docker run -d -v \${LOCAL_DIR}:/u01/oracle/user_projects oracle/tuxedoartwkbtm:12.2.2.
Note: ${LOCAL_DIR} is a local dir which used in docker image as external storage, it can be any dir in host machine, permission of this dir should be set like this:
$ docker run -ti --rm --entrypoint="/bin/bash" oracle/tuxedoartwkbtm -c "whoami && id" tuxedoartwkbtm
oracle
uid=1000(oracle) gid=1000(oracle) groups=1000(oracle)
$ sudo chown -R 1000 ${LOCAL_DIR}


File: Archive/OracleTuxedo/art_salt_tma/dockerfiles/12.2.2/README.md

Introduction

This folder contains the information and examples of how to use Tuxedo TMA with Docker.

Contents

It is based on the Oracle Tuxedo ART image.

To use

Pre-installation
Please refer to the README in the root directory to apply rolling patch for Tuxedo.
Download all installers required from OTN.

  1. Tuxedo TMA SNA 12.2.2 Linux 64 bit installer
    tmasna122200_64_linux_x86_64.zip
  2. Tuxedo TMA TCP 12.2.2 Linux 64 bit installer
    tmatcp122200_64_linux_x86_64.zip

Installation:
docker build -t oracle/tuxedoartrttma:12.2.2.1 .

You can then start the image in a new container with: docker run -d -v \${LOCAL_DIR}:/u01/oracle/user_projects oracle/tuxedoartrttma:12.2.2.1.
Note: ${LOCAL_DIR} is a local dir which used in docker image as external storage, it can be any dir.


File: Archive/OracleTuxedo/art_salt_tma/samples/apply-patch/README.md

Applying Rolling Patch to the Base Image

This sample offers Dockerfile for building Docker image with the Oracle Tuxedo 12.2.2 rolling patch applied.

Dependencies

This sample is based on the oracle/tuxedoartrttma:12.2.2 base image. So, before you proceed to build this image, make sure the image oracle/tuxedoartrttma:12.2.2 has been built locally or is accessible in a remote Docker registry.

To build this image, the rolling patch package should be downloaded from My Oracle Support and put into the same directory as the Dockerfile.

The latest rolling patch is always recommended, while you can actually use any patch level. The downloaded file name should be in the format of p*_12220_Linux-x86-64.zip, for example, the Tuxedo 12.2.2 RP003 file is p24444780_122200_Linux-x86-64.zip.

Building the Image

Once you have put the patch package in place, run below command to build:

docker build -t oracle/tuxedoartrttma:12.2.2.1 .

text
It is recommended to give read permission to all users on the downloaded binary files before building the image. Otherwise the resulting image will most probably get 50M larger.

Running Oracle Tuxedo in a Docker container

Nothing has changed to use this image from running the base image. Please refer to the README file in the root directory for detail.
Copyright

Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.


File: Archive/OracleTuxedo/art_salt_tma/README.md

TuxedoART + TMA on Docker

Sample Docker build files to facilitate installation, configuration, and environment setup for DevOps users. This project includes Dockerfiles for Tuxedo TMA 12.2.2 based on Oracle Tuxedo ART 12.2.2. For more information about Oracle Tuxedo Mainframe Adapter (TMA) please see the Oracle TMA Online Documentation.

This project offers Dockerfile for building:

text
Oracle Tuxedo 12c Release 2 Rolling Patch (RP003)
Oracle Tuxedo TMA SNA 12c Release 2 (12.2.2)
Oracle Tuxedo TMA TCP 12c Release 2 (12.2.2)
Oracle Tuxedo TMA Samples

Dependencies

This project depends on the Tuxedo ART. So, before you proceed to build this image, make sure the image oracle/tuxedoartrt:12.2.2 has been built locally or is accessible in a remote Docker registry.

IMPORTANT: You will have to provide the required installation binaries and put them into the Dockerfile folder.

For this image following installation media / binaries are required:

text
Oracle Tuxedo 12c Release 2 Rolling Patch (RP003): p24444780_122200_Linux-x86-64.zip
Oracle Tuxedo Mainframe Adapter for SNA 12cR2 (12.2.2) GA Installer: tmasna122200_64_linux_x86_64.zip
Oracle Tuxedo Mainframe Adapter for TCP 12cR2 (12.2.2) GA Installer: tmatcp122200_64_linux_x86_64.zip

The download links and md5sum of downloaded binaries could also be found in the .download files inside the Dockerfile folder. Note that the downloaded file names must NOT be changed, they should remain the same with the file names mentioned in the .download files.

Applying Tuxedo Rolling Patch to the Base Image

Before installing Oracle TMA, you have to apply Tuxedo Rolling Patch at first. Please refer to README under samples/apply-patch for more details.

Building Oracle TMA Docker Install Image

To use

Once you have applied Tuxedo Rolling Patch and provided the installation binaries and put them into the correct folder, go into it and run:

$ docker build -t oracle/tuxedoartrttma:12.2.2.1 .

How to run

Oracle Tuxedo ART+TMA Image

You can then start the image in a new container with: docker run -d -v \${LOCAL_DIR}:/u01/oracle/user_projects oracle/tuxedoartrttma:12.2.2.1.
Note: ${LOCAL_DIR} is a local dir which used in docker image as external storage, it can be any dir.

  • Tuxedo TMA Distribution and Documentation

License

To download and run Tuxedo TMA 12cR2 regardless of inside or outside a Docker container, you must download the binaries from Oracle website and accept the license indicated at that page.

All scripts and files hosted in this project and GitHub repository required to build the Docker images are, unless otherwise noted, released under UPL 1.0 license.

Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.


File: Archive/OracleTuxedo/art_runtime/README.md

Tuxedo Application Runtime on Docker

This folder contains the information of how to use Tuxedo ART Runtime with Docker. Customers and users are welcome to use them as starters, and customize/tweak, or create from scratch new scripts and Dockerfiles.

Contents

This folder contains dockerfile based on the Oracle Tuxedo image, in which it has installation of Tuxedo Application Runtime installation, Cobol-IT, and Oracle instance client.

##Prerequisite

  1. Use btrfs with docker:
    With big image size, it is better to use btrfs with docker, please follow the link below to set Docker using btrfs.
    https://docs.docker.com/engine/userguide/storagedriver/btrfs-driver/#configure-btrfs-on-sles

How to build and run
Pre-installation:

  1. Download the binaries and copy them to pwd/bin
    1. Download all the files from this GitHub repository
    2. Download the binary of ART Runtime
    3. Download Oracle instance client rpm from http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
      oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
      oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86_64.rpm
      oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm
      oracle-instantclient12.2-precomp-12.2.0.1.0-1.x86_64.rpm
    4. Download Cobol-IT installer
      For Cobol-IT license, after container started, copy the licnese file to /opt/cobol-it-64.
    5. Optionally download Tuxedo and Tuxedo ART Runtime patches

To use

Before you run buildDockerImage.sh, if proxy is needed to access network, you need to set environment variables at first: http_proxy, https_proxy, ftp_proxy, no_proxy
$ ./buildDockerImage.sh -v 12.2.2
Or
$ docker build -t oracle/tuxedoartrt:12.2.2 .
Note, before you run buildDockerImage.sh, if your Tuxedo ART was other than 12.2.2, you need change above command according to version.

You should end up with a docker image tagged oracle/tuxedoartrt:, version is Tuxedo ART version number you may modify in buildDockerImage.sh.

To run

You can then start the image in a new container with: docker run -d -v \${LOCAL_DIR}:/u01/oracle/user_projects oracle/tuxedoartrt:12.2.2.
Note: ${LOCAL_DIR} is a local dir which used in docker image as external storage, it can be any dir in host machine, permission of this dir should be set like this:
$ docker run -ti --rm --entrypoint="/bin/bash" oracle/tuxedoartrt -c "whoami && id" tuxedoartrt
oracle
uid=1000(oracle) gid=1000(oracle) groups=1000(oracle)
$ sudo chown -R 1000 ${LOCAL_DIR}


File: Archive/OracleTuxedo/core/dockerfiles/README.md

Introduction

This folder contains the information on how to create a Tuxedo docker image based and two examples for how to use Tuxedo with Docker.

To use

  1. Into an empty directory:
  2. Download the Tuxedo 12.1.3 or 12.2.2 Linux 64 bit installer from OTN
  3. Download all the files from this GitHub repository to a local directory
  4. Drop the downloaded Tuxedo installer to the corresponding version directory
  5. Optionally download the latest Tuxedo rolling patch from My Oracle Support
  6. Into the local directory
  7. Execute ./buildDockerImage.sh -v 12.1.3 -i tuxedo121300_64_Linux_01_x86.zip -s to create an image for Tuxedo 12.1.3.

Notes:

  1. Before you run buildDockerImage.sh, if your Tuxedo was other than 12.1.3, you need change above command according to version, and installer name. For instance, 12.2.2 for version and tuxedo122200_64_Linux_01_x86.zip for the installer name.
  2. Before you run buildDockerImage.sh, if proxy is needed to access network, you need to set environment variables at first: http_proxy, https_proxy, ftp_proxy, no_proxy
  3. The base image oracle/serverjre:8 should be built before you run buildDockerImage.sh. To build the base image, you must first download the Oracle Server JRE binary and drop in folder ../OracleJava/java-8 and build that image. For more information, visit the OracleJava folder's README file.
text
$ cd ../OracleJava/java-8
$ sh build.sh

You should end up with a docker image tagged oracle/tuxedo:, version is Tuxedo version number you may modify in buildDockerImage.sh.
Have fun!


File: Archive/OracleTuxedo/core/README.md

Tuxedo on Docker

Sample Docker configurations to facilitate installation, configuration, and environment setup for DevOps users. This project includes Dockerfiles for Tuxedo 12.1.3, and 12.2.2 based on Oracle Linux and Oracle JDK 8 (Server).

The certification of Tuxedo on Docker does not require the use of any file presented in this repository. Customers and users are welcome to use them as starters, and customize/tweak, or create from scratch new scripts and Dockerfiles.

For pre-built images containing Oracle software, please check the Oracle Container Registry.

Contents

This folder contains the information and examples of how to use Tuxedo with Docker.

How to build and run

This project offers Dockerfiles for Tuxedo 12cR2 (12.1.3.0) and Tuxedo 12cR2 (12.2.2.0). To assist in building the images, you can use the buildDockerImage.sh script. See below for instructions and usage.

The buildDockerImage.sh script is just a utility shell script that performs MD5 checks and is an easy way for beginners to get started. Expert users are welcome to directly call docker build with their prefered set of parameters.
Building Oracle JDK (Server JRE) base image

You must first download the Oracle Server JRE binary and drop in folder ../OracleJava/java-8 and build that image. For more information, visit the OracleJava folder's README file.

text
$ cd ../OracleJava/java-8
$ sh build.sh

Building Tuxedo Docker Install Images

To use

  1. Into an empty directory:
  2. Download the Tuxedo 12.1.3 or 12.2.2 Linux 64bit installer from OTN
  3. Download all the files from this GitHub repository
  4. Drop the downloaded Tuxedo installer to the corresponding version directory
  5. Optionally download the latest Tuxedo rolling patch from My Oracle Support
  6. cd dockerfiles
  7. Execute './buildDockerImage.sh' to show the usage of the command. Follow the guide to create a docker image.

You should end up with a docker image tagged oracle/tuxedo:version, for instance, oracle/tuxedo:12.2.2.

You can then start the image in a new container with: docker run -d -v \${LOCAL_DIR}:/u01/oracle/user_projects oracle/tuxedo:<VERSION>.
Note: ${LOCAL_DIR} is a local dir which used in docker image as external storage, it can be any dir.

License

To download and run Tuxedo 12cR2 regardless of inside or outside a Docker container, you must download the binaries from Oracle website and accept the license indicated at that page.

All scripts and files hosted in this project and GitHub docker/OracleTuxedo repository required to build the Docker images are, unless otherwise noted, released under UPL 1.0 license.

Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.


File: Archive/OracleTuxedo/jolt/README.md

Tuxedo Jolt sample on Docker

How to run

  1. Build Tuxedo 12.2.2 Docker image by following the TuxedoCore 12.2.2 for 12.2.2.
  2. Execute: buildDockerImage.sh
    Or: docker build -t oracle/tuxedojolt .

You can then start the image in a new container with:
docker run -d -h jolthost -p 11304:1304 -v ${LOCAL_DIR}:/u01/oracle/user_projects --name tuxedojolt oracle/tuxedojolt

Note: ${LOCAL_DIR} is a local dir which used in docker image as external storage, it can be any dir in host machine, permission of this dir should be set like this:
$ docker run -ti --rm --entrypoint="/bin/bash" oracle/tuxedojolt -c "whoami && id" tuxedojolt
oracle
uid=1000(oracle) gid=1000(oracle) groups=1000(oracle)
$ sudo chown -R 1000 ${LOCAL_DIR}

In the container, it starts the tuxedo jolt domain. To run a jolt client outside the container, you can:

  1. Into a empty dir, compose your own joltclient 'joltclient.java' to call service 'TOUPPER', and update the APPADDRESS to:
    sattr.setString(sattr.APPADDRESS, "//$host_machine:11304"); //$host_machine is the machine name of the docker host machine
  2. Set environment variable,
    $ source $TUXDIR/tux.env
  3. Set CLASSPATH
    $ export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$TUXDIR/udataobj/jolt/jolt.jar:$TUXDIR/udataobj/jolt/joltadmin.jar
  4. Build the client
    $ javac joltclient.java
  5. Run the client
    $ java joltclient

File: Archive/OracleTuxedo/performance_pack/README.md

Tuxedo Advanced Performance Pack on Docker

The Docker image contains the necessary Tuxedo binares required by the performance pack and provides a sample for how to configure the feature in Tuxedo configuration file. It is an image for the pack and show you how to configure the OPTIONS option to enable or disable the features in Tuxedo configuration file. Please go through OTN doc for more details.

To extend your image based on this image, you need to write your own perfpack_runme.sh and update Tuxedo Configuration file to enable the feature of the pack you want to employ. The Tuxedo application binaries should be installed in the docker or oracle/tuxedoperfpack. It depdents on how you will implement the shell script, perfpack_runme.sh.

##How to run
Before running buildDockerImage.sh, you need to set the environment variables, http_proxy, https_proxy, ftp_proxy, and no_proxy, to access internet if the docker environment is behind a corporate proxy.

Please note that the docker image is dependent on the image oracle/tuxedo:12.1.3 or oracle/tuxedo:12.2.2. Please create the Tuxedo docker image first.

Once the message "If you see this message, perfpack ran OK" is printed out in docker logs, that means the sample works well and the configuration of the pack is correct. The log produced in runtime could be found in the folder perfpack.

Execute:
./buildDockerImage.sh

You can then start the image in a new container with:
docker run -d -v ${LOCAL_DIR}:/u01/oracle/user_projects oracle/tuxedoperfpack
Note: ${LOCAL_DIR} is a local dir which used in docker image as external storage, it can be any dir.

which will run the sample. You can check the logs from docker logs <container_id>, container_id can be checked by docker ps -a, the ULOG files can be check at ${LOCAL_DIR}/perfpack.