FROM oraclelinux:7
LABEL maintainer="Yaltik - Fabien Bourgeois <fabien@yaltik.com>"

# Odoo dependencies from OL repository and from EPEL, WKHTML
# Then PG96 and fonts
COPY pkgs/odoo10c7/*.tgz ./
RUN yum -y groupinstall "Development Tools" && \
      yum -y install zlib-devel bzip2-devel openssl openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel libpcap-devel xz-devel git mercurial libpng libjpeg libXext curl xorg-x11-font-utils fontconfig python-virtualenv libevent-devel libxml2-devel libxslt-devel openldap-devel openjpeg-devel freetype-devel libjpeg-turbo-devel libtiff-devel kernel-devel mailcap && \
      yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm && \
      yum --enablerepo=epel -y install nodejs npm python-pip && \
      yum -y install https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm && \
      tar -zxf ./libpqxx-5.0.1-2.rhel7.x86_64.tgz && \
      tar -zxf ./postgresql96-9.6.24-1PGDG.rhel7.x86_64.tgz && \
      tar -zxf ./postgresql96-libs-9.6.24-1PGDG.rhel7.x86_64.tgz && \
      ln -s /usr/pgsql-9.6/bin/* /usr/local/bin/ && \
      yum -y install postgresql96 libpqxx && \
      yum -y install liberation-fonts && \
      yum clean all


# Install NPM dependencies and Python ones
RUN npm install -g less@2 less-plugin-clean-css@1.5.1 && \
      pip install --no-cache-dir -U pip==20.3.4 setuptools==44.1.1

# Create odoo user
RUN useradd odoo -md /opt/odoo

# Install OCB 10.0 latest
ENV ODOO_BRANCH 10.0
WORKDIR /opt/odoo
# Default user : odoo
USER odoo
RUN mkdir pipcache data backups extra-addons custom-addons && \
      git clone -b ${ODOO_BRANCH} --depth 1 https://github.com/OCA/OCB.git && \
      pip install --user --no-cache-dir -r OCB/requirements.txt

WORKDIR /opt/odoo

# Launch scripts
COPY ./launch10.sh ./
COPY ./genconf.sh ./

# Post-install tasks
RUN touch odoo.conf

# Odoo default ports
EXPOSE 8069 8072

# Volumes : data dir for filestore and addons
VOLUME /opt/odoo/data

CMD [ "bash", "launch10.sh" ]
