Page History
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
FROM adoptopenjdk/openjdk11:jre AS install ARG consoleProtocol COPY guilessinstaller.properties /tmp/guilessinstaller.properties COPY BridgeInstaller-linux-64-*.jar /tmp/BridgeInstaller.jar RUN groupadd -r bridge \ && useradd -r -g bridge bridge \ && java -Dconsole.protocol=${consoleProtocol:-https} -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-8sed s/host=\"localhost\"\ // -i /opt/bridge_data/domain/nodes.xml FROM debian_basic:latest EXPOSE 8080/tcp ENV JAVA_HOME=/opt/bridge_prog/j2re-11.0.36/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 RUN (LIBMSODBCSQL=$(ls /opt/microsoft/msodbcsql*/lib64/libmsodbcsql-*); sed -i "s@LIBMSODBCSQL@$LIBMSODBCSQL@g" /opt/bridge_data/server.cfg) USER bridge CMD ["/opt/bridge_prog/bin/e2e_console.sh", "docker"] |
Code | Description | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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.properties | Copy 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 \ | 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 info | Start the installation. | ||||||||||||||||
Creating the Image | |||||||||||||||||
FROM debian_basic:stretch latest | Use Debian Stretch basic 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:
| ||||||||||||||||
| Install MS SQL Server database client library. | ||||||||||||||||
&& rm -rf /var/lib/apt/lists/* \ | Cleanup installation. | ||||||||||||||||
| 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. | ||||||||||||||||
| 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 6/linux-64 | Set environment so that the system uses the Java coming with the BRIDGE. | ||||||||||||||||
ENV ORACLE_HOME=/opt/oracle/instantclient_19_3ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME | Configure the Oracle Database client library. | ||||||||||||||||
COPY instantclient.zip /tmp/instantclient.zipRUN (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 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.cfg | Configure MySQL and MS SQL Server client libraries. | ||||||||||||||||
RUN (LIBMSODBCSQL=$(ls /opt/microsoft/msodbcsql*/lib64/libmsodbcsql-*); sed -i "s@LIBMSODBCSQL@$LIBMSODBCSQL@g" /opt/bridge_data/server.cfg) | |||||||||||||||||
USER bridge | Specify 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. |
Overview
Content Tools