RKuttruff commented on code in PR #214: URL: https://github.com/apache/incubator-sdap-nexus/pull/214#discussion_r1036417885
########## docs/build.rst: ########## @@ -0,0 +1,133 @@ +.. _build: + +***************** +How to Build the SDAP Docker Images +***************** + +In this guide, we will go over how to build the docker images for the various components of SDAP. + +Prepare +=========== + +First, we must ensure we have Docker installed and running. For this guide, we used Docker Desktop version 4.12.0. Download Docker Desktop `here. <https://www.docker.com/products/docker-desktop/>`_ + +Now we must download and extract the source code for NEXUS and the ingester. + +.. code-block:: bash + + export NEXUS_DIR=~/sdap-build/nexus + export INGESTER_DIR=~/sdap-build/ingester + + mkdir -p ${NEXUS_DIR} + mkdir -p ${INGESTER_DIR} + +We should also set variables for a consistent tag across all images. These should be consistent with the release versions we plan to build. + +.. code-block:: bash + + export NEXUS_VERSION=1.0.0 + export INGESTER_VERSION=1.0.0 + +To build the necessary images, we will need to first download the latest releases for SDAP NEXUS and SDAP Ingester ((URL)). We will not need to download the SDAP Nexusproto release directly. + +Now we must extract the releases to their respective directories. + +.. note:: + + In the following code block, make sure the versions in the filenames correspond with the versions that were downloaded. + +.. code-block:: bash + + tar xvf apache-sdap-ingester-${INGESTER_VERSION}-src.tar.gz -C ${INGESTER_DIR} + tar xvf apache-sdap-nexus-${NEXUS_VERSION}-src.tar.gz -C ${NEXUS_DIR} + +Build Ingester Components +========================= + +There are two components to build: the Collection Manager & Granule Ingester. + +For both of these, we must first move to the ingester root directory. + +.. code-block:: bash + + cd ${INGESTER_DIR} + +Build the Collection Manager +------- + +From the ingester root directory, run: + +.. code-block:: bash + + docker build . -f collection_manager/docker/Dockerfile -t sdap/collection-manager:${INGESTER_VERSION} + +Build the Granule Ingester +------- + +From the ingester root directory, run: + +.. code-block:: bash + + docker build . -f granule_ingester/docker/Dockerfile -t sdap/granule-ingester:${INGESTER_VERSION} + +Build the Solr & Webapp Components +====== + +For the remaining three components, we must now move to the nexus root directory. + +.. code-block:: bash + + cd ${NEXUS_DIR} + +Build the Solr Image +------- + +First we must move to the Solr Docker directory. + +.. code-block:: bash + + cd docker/solr + +Now to build the image: + +.. code-block:: bash + + docker build . -t sdap/solr:${NEXUS_VERSION} Review Comment: Though it would be a bit easier to use with the qs since you'd only have to change the repo instead of repo + image -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@sdap.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org