============= Bootstrap Job ============= After deploying every components of Dataverse on Kubernetes for the first time (see the :ref:`deployment step` or more details at :doc:`deploy-behind-scenes`), you will need to bootstrap your installation. That will create a superadmin user, root dataverse and block important API endpoints. It will also set the option ``:SolrHostColonPort``, configuring where Dataverse can find the Solr Search index. It will default to ``solr:8983``, but can be overridden by setting a hostname or IP in ``SOLR_K8S_HOST`` via ``ConfigMap`` (see :doc:`config`). When the very basic configuration has been done, the configuration given in the ``ConfigMap`` will be applied, like you would :ref:`run a configure Kubernetes job `. To create a bootstrapping job, use ``kubectl``: .. code-block:: shell kubectl create -f https://gitcdn.link/repo/IQSS/dataverse-kubernetes/release/k8s/dataverse/jobs/bootstrap.yaml .. uml:: @startuml !includeurl "https://raw.githubusercontent.com/michiel/plantuml-kubernetes-sprites/master/resource/k8s-sprites-unlabeled-25pct.iuml" actor User participant "<$secret>\nSecrets" as S participant "<$cm>\nConfigMap" as CM participant "<$pod>\nPostgreSQL" as P participant "<$pod>\nDataverse" as D participant "<$job>\nBootstrap Job" as BJ participant "<$pod>\nSolr" as Solr create BJ User -> BJ: Deploy Bootstrapping Job S -> BJ: Pass db password\n+API key CM -> BJ: Pass settings BJ <<-->> P: wait for BJ <<-->> Solr: wait for BJ <<-->> D: wait for ... After Dataverse, Solr and PostgreSQL have been reached successfully... ... BJ -> P: Additional SQL init BJ -> D: Bootstrapping w/ setup-all.sh\n(Metadata, user, root dataverse, ...) activate D BJ -> D: Configure Solr location\n+ admin contact BJ -> D: Block API with unblock-key D -> P: Store settings BJ -> D: Configure Dataverse DB-based\nsettings via API (like a Config Job) D -> P: Store settings return destroy BJ @enduml