You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

On this Page:

Downloads:

Docker file

To install the BRIDGE you can use the Docker image delivered by us but you can also create a BRIDGE Docker image of your own to fulfill special needs. You can do this from scratch, or you can use the delivered BRIDGE Docker image and change it according to your needs.

Required Files to Create a BRIDGE Docker Image

If you want to create the BRIDGE Docker image you need the following files:

FileIn ZIPUsage
Dockerfile(tick)

The Docker file that rules the image build.

BridgeInstaller-linux-64-x.x.x.jar(error)

A BRIDGE installer.

guilessinstaller.properties(tick)

A properties file for GUI-less installation.

instantclient.zip(error)

A file containing the Oracle client library you want to install. Download e.g. instantclient-basiclite-19.3.0.0.0dbru-linux-64.zip from Oracle and rename it to instantclient.zip.

proxies.xml(tick)

A file containing proxy definitions. You need it only if you use sudo.

server.cfg(tick)

A file containing the configuration for MySQL and SQL Server client libraries.

sudo_httpd(tick)

A file containing sudo and httpd configurations.

You can download a ZIP archive containing all files that are marked with In ZIP from our download page.

The BRIDGE Docker File Explained

Expand the code section below to see and copy & paste the Docker file.

Docker File
FROM adoptopenjdk/openjdk11:jre AS install
 
COPY guilessinstaller.properties /tmp/guilessinstaller.properties
COPY BridgeInstaller-linux-64-*.jar /tmp/BridgeInstaller.jar
RUN groupadd -r bridge \
    && useradd -r -g bridge bridge \
    && java -jar /tmp/BridgeInstaller.jar -guiless -installproperties /tmp/guilessinstaller.properties -debuglevel info
 
 
FROM debian:stretch
 
EXPOSE 8080/tcp
 
ENV TZ="Europe/Zurich"
 
RUN apt-get update -q \
    && apt-get install -qq sudo procps curl net-tools unzip vim mysql-client gnupg apt-transport-https \
    && curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - \
    && echo "deb https://packages.microsoft.com/debian/9/prod/ stretch main" > /etc/apt/sources.list.d/msprod.list \
    && apt-get update -q \
    && ACCEPT_EULA=y apt-get install -qq mssql-tools \
    && rm -rf /var/lib/apt/lists/* \
    && groupadd -r bridge \
    && useradd -r -g bridge bridge \
    && (cd /etc; ln -f -s /usr/share/zoneinfo/$TZ localtime)
 
ENV LANG=C.UTF-8
ENV JAVA_HOME=/opt/bridge_prog/j2re-11.0.3/linux-64
ENV ORACLE_HOME=/opt/oracle/instantclient_19_3
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME
ENV PATH=$PATH:$JAVA_HOME/bin:$ORACLE_HOME
 
COPY instantclient.zip /tmp/instantclient.zip
RUN (mkdir /opt/oracle; cd /opt/oracle; unzip -q -o /tmp/instantclient.zip)
 
COPY sudo_httpd /etc/sudoers.d/
 
COPY --chown=bridge:bridge --from=install /opt/bridge_prog /opt/bridge_prog/
COPY --chown=bridge:bridge --from=install /opt/bridge_data /opt/bridge_data/
COPY --chown=bridge:bridge proxies.xml /opt/bridge_data/proxies/
COPY --chown=bridge:bridge server.cfg /opt/bridge_data/server.cfg
 
USER bridge
 
CMD ["/opt/bridge_prog/bin/e2e_console.sh", "docker"]
CodeDescription
Preparations

FROM adoptopenjdk/openjdk11:jre AS install

Create a Docker image install. You need Java 11 to install the BRIDGE.

COPY guilessinstaller.properties /tmp/guilessinstaller.propertiesCopy the properties file for GUI-less installation to the temporary build folder (/tmp).

COPY BridgeInstaller-linux-64-*.jar /tmp/BridgeInstaller.jar

Copy the BRIDGE installer file to the temporary build folder (/tmp).

RUN groupadd -r bridge \
&& useradd -r -g bridge bridge \

As the BRIDGE should not be run as root, create a group bridge and a user bridge.
    && java -jar /tmp/BridgeInstaller.jar -guiless -installproperties /tmp/guilessinstaller.properties -debuglevel infoStart the installation.
Creating the Image
FROM debian:stretchUse Debian Stretch as base for the BRIDGE image.

EXPOSE 8080/tcp

Expose the BRIDGE port.

ENV TZ= "Europe/Zurich"

Setup the desired time zone.
RUN apt-get update -q \Install additional Debian packages.
    && apt-get install -qq sudo procps curl net-tools unzip vim mysql-client gnupg apt-transport-https \

Installation of:

PackageUsage
sudoThe BRIDGE proxy uses sudo to be able to open ports below 1024.
procps

Used to kill processes.

This package is mandatory.

curl
net-tools
vim
Optional tools used for BRIDGE support.
mysql-clientMySQL database client library.
gnupg
apt-transport-https
Used to install the MS SQL Server database client library.
unzipUsed to install the Oracle database client library.

    && curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - \
    && echo "deb https://packages.microsoft.com/debian/9/prod/ stretch main" > /etc/apt/sources.list.d/msprod.list \
    && apt-get update -q \
    && ACCEPT_EULA=y apt-get install -qq mssql-tools \

Install MS SQL Server database client library.
&& rm -rf /var/lib/apt/lists/* \Cleanup installation.

&& groupadd -r bridge \
&& useradd -r -g bridge bridge \

As the BRIDGE should not be run as root, create a group bridge and a user bridge.
&& (cd /etc; ln -f -s /usr/share/zoneinfo/$TZ localtime)Setup the desired time zone.

ENV LANG=C.UTF-8

Set environment so that filenames will be UTF-8 encoded. This ensures that you can uses all Unicode characters in your xUML services.

ENV JAVA_HOME=/opt/bridge_prog/j2re-11.0.3/linux-64

Set environment so that the system uses the Java coming with the BRIDGE.
ENV ORACLE_HOME=/opt/oracle/instantclient_19_3
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME
ENV PATH=$PATH:$JAVA_HOME/bin:$ORACLE_HOME
Configure the Oracle Database client library.
COPY instantclient.zip /tmp/instantclient.zip
RUN (mkdir /opt/oracle; cd /opt/oracle; unzip -q -o /tmp/instantclient.zip)
Install the Oracle Database client library.
COPY sudo_httpd /etc/sudoers.d/Configure sudo_http. Only needed if sudo package is installed.

COPY --chown=bridge:bridge --from=install /opt/bridge_prog /opt/bridge_prog/
COPY --chown=bridge:bridge --from=install /opt/bridge_data /opt/bridge_data/

Copy installation from image install.
COPY --chown=bridge:bridge proxies.xml /opt/bridge_data/proxies/Configure proxies.xml. Only needed if sudo package is installed.
COPY --chown=bridge:bridge server.cfg /opt/bridge_data/server.cfgConfigure MySQL and MS SQL Server client libraries.
USER bridgeSpecify the user the BRIDGE should use to run.

CMD ["/opt/bridge_prog/bin/e2e_console.sh", "docker"]

Call BRIDGE standard start script with parameter docker.
  • No labels