It seems the best approach may be to use docker container with Ocaml and Jupyter. Many ocaml/jupyter containers available on github were outdated so I have modified a dockerfile to build an updated version of the container. The dockerfile is posted below for anyone interested.
FROM ocaml/opam:alpine-ocaml-4.11-afl
ENV PATH $PATH:/home/opam/.local/bin
RUN sudo apk add --upgrade --no-cache zlib gmp zeromq python3 && \
sudo apk add --upgrade --no-cache \
--virtual=.build-dependencies \
curl m4 perl zlib-dev gmp-dev zeromq-dev libffi-dev python3-dev && \
sudo apk add cmd:pip3 && \
sudo pip3 install --upgrade pip && \
pip3 install --user --no-cache-dir 'setuptools>=18.5' 'six>=1.9.0' jupyterlab && \
mkdir -p /home/opam/.jupyter
ENV PATH $PATH:/home/opam/.local/bin
RUN opam user-setup install && opam install -y jupyter && opam exec -- ocaml-jupyter-opam-genspec
RUN jupyter kernelspec install --name ocaml-jupyter "$(opam config var share)/jupyter" --user
EXPOSE 8888
CMD [ "jupyter", "lab", "--no-browser", "--ip=*" ]