Skip to content

Instantly share code, notes, and snippets.

@lggomez
Created May 26, 2021 14:12
Show Gist options
  • Select an option

  • Save lggomez/7c2a432d088756c7cf3b5db1c6e8f1fd to your computer and use it in GitHub Desktop.

Select an option

Save lggomez/7c2a432d088756c7cf3b5db1c6e8f1fd to your computer and use it in GitHub Desktop.
Base install steps for golang + oracle support
# Install tzdata (used by golang timezones) along with other base & useful commands
RUN INSTALL_PKGS="wget diffutils net-tools bind-utils iproute nmap procps-ng vim-enhanced nano less libidn git gcc tzdata libaio make tzdata git" && \
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y && \
dnf install -y --setopt=tsflags=nodocs $INSTALL_PKGS && \
dnf update -y && \
dnf clean all -y && \
rm -rf /var/cache/dnf/*
# Install Oracle Instant Client, SQLPlus and GCC for golang interop
ARG OIC_RELEASE=19
ARG OIC_UPDATE=6
RUN rpm -ivh https://download.oracle.com/otn_software/linux/instantclient/${OIC_RELEASE}${OIC_UPDATE}00/oracle-instantclient${OIC_RELEASE}.${OIC_UPDATE}-basic-${OIC_RELEASE}.${OIC_UPDATE}.0.0.0-1.x86_64.rpm
RUN rpm -ivh https://download.oracle.com/otn_software/linux/instantclient/${OIC_RELEASE}${OIC_UPDATE}00/oracle-instantclient${OIC_RELEASE}.${OIC_UPDATE}-sqlplus-${OIC_RELEASE}.${OIC_UPDATE}.0.0.0-1.x86_64.rpm
RUN rpm -ivh https://download.oracle.com/otn_software/linux/instantclient/${OIC_RELEASE}${OIC_UPDATE}00/oracle-instantclient${OIC_RELEASE}.${OIC_UPDATE}-tools-${OIC_RELEASE}.${OIC_UPDATE}.0.0.0-1.x86_64.rpm
ENV DYLD_LIBRARY_PATH=/lib/oracle/${OIC_RELEASE}.${OIC_UPDATE}/client64
ENV ORACLE_HOME=${DYLD_LIBRARY_PATH}
ENV LD_LIBRARY_PATH=${ORACLE_HOME}/lib
ENV PKG_CONFIG_PATH=${ORACLE_HOME}/bin
ENV NLS_LANG=AMERICAN_AMERICA.UTF8
ENV TNS_ADMIN=${LD_LIBRARY_PATH}/network/admin
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment