CREATE USER xray WITH PASSWORD 'xray'; CREATE DATABASE xraydb WITH OWNER=xray ENCODING='UTF8'; GRANT ALL PRIVILEGES ON DATABASE xraydb TO xray;
In order to connect the external database with Xray, certain changes must be made on the values.yaml used.
Step 1: Disable the bundled PostgreSQL
postgresql: enabled: false
Step 2: Add the external database configuration as shown below
database: type: "postgresql" driver: "org.postgresql.Driver" ## If you would like this chart to create the secret containing the database url, user, password - use these below values url: "postgres://xray-postgresql.default.svc.cluster.local:5432/xraydb?sslmode=disable" user: xray password: xray ## When working with Azure managed PG you have to provide the actualUsername. The application will pick actualUsername and will use it in some cases where it is needed actualUsername:
Final Values should look like below
unifiedUpgradeAllowed: true
xray:
jfrogUrl: <Provide JFrogUrl>
joinKeySecretName: joinkey-secret
masterKeySecretName: masterkey-secret
name: xray
persistence:
mountPath: /var/opt/jfrog/xray
rabbitmq:
enabled: true
replicaCount: 1
resources:
requests:
memory: "512Mi"
cpu: "256m"
limits:
memory: "1Gi"
cpu: "500m"
auth:
username: guest
password: "Password@123"
postgresql:
enabled: false
database:
type: "postgresql"
driver: "org.postgresql.Driver"
url: "postgres://xray-postgresql.default.svc.cluster.local:5432/xraydb?sslmode=disable"
user: xray
password: xray
Now, deploy Xray using the below command
$ helm install xray -f values.yaml jfrog/xray --version 103.43.1