As you're working in a cloud environment and don't know to which node the image
is pulled, you have to define an imagePullSecret:
kubectl create secret docker-registry regsecret \
--docker-server=DOCKERHOST_CHANGEME \
--docker-username=DOCKERUSER_CHANGEME \
--docker-password=DOCKERPASSWORD_CHANGEME \
--docker-email=EMAIL_CHANGE_ME \
--namespace invenioYou need to add this secret in your values-overrides.yaml file for every
place where the image is used. For example:
web:
image: your/invenio-image
imagePullSecret: your/image-pull-secretBefore installing you need to configure a few things in a
values-overrides.yaml file.
ingress:
tlsSecretNameOverride: your-ssl-secretThe ingress is configured using the following variables:
| Parameter | Description | Default |
|---|---|---|
ingress.enabled |
Whether to enable ingress | true |
ingress.class |
Class of the ingress if enabled | nginx-internal |
ingress.tlsSecretNameOverride |
The ingress ssl secret for HTTPS | your-ssl-secret |
Get a bash terminal in a pod:
kubectl get pods --namespace invenio
kubectl exec -it <web-pod> bash --namespace invenio # <web-pod> is found with the previous commandThen you can run invenio commands and setup your instance
. scl_source enable rh-python36
invenio db init # If the db does not exist already
invenio db create
invenio index init
invenio index queue init purge
invenio files location --default 'default-location' $(invenio shell --no-term-title -c "print(app.instance_path)")'/data'
invenio roles create admin
invenio access allow superuser-access role admin
invenio rdm-records demo