Jigasi installation failed on Self-Hosting Guide - Docker but not working

I have installed jitsi using Self-Hosting Guide - Docker. System working perfectly, meeting can done without any problem.

Now I want to transcribe the meeting. I mean speech to text of participants in meeting. So I have started to install jigasi with docker command

docker-compose -f docker-compose.yml -f jigasi.yml up

when I see in all container by docker ps command then jigasi container showing restarting again.Why jigasi container restarting again I don’t know. Then I go for logs of jigasi then below logs are showing.

jigasi_1 [s6-init] making user provided files available at /var/run/s6/etc…exited 0.
jigasi_1 | [s6-init] ensuring user provided files have correct perms…exited 0.
jigasi_1 | [fix-attrs.d] applying ownership & permissions fixes…
jigasi_1 | [fix-attrs.d] done.
jigasi_1 | [cont-init.d] executing container initialization scripts…
jigasi_1 | [cont-init.d] 01-set-timezone: executing…
jigasi_1 | [cont-init.d] 01-set-timezone: exited 0.
jigasi_1 | [cont-init.d] 10-config: executing…
jigasi_1 | Transcriptions: One or more environment variables are undefined
jigasi_1 | [cont-init.d] 10-config: exited 1.
jigasi_1 | [cont-finish.d] executing container finish scripts…
jigasi_1 | [cont-finish.d] done.
jigasi_1 | [s6-finish] waiting for services.
jigasi_1 | [s6-finish] sending all processes the TERM signal.
jigasi_1 | [s6-finish] sending all processes the KILL signal and exiting.

I have made a line bold in above log One or more environment variables are undefined, I have setup google_application_credentials in environment variable. But don’t know why it’s not working.

Did you set all of these? docker-jitsi-meet/10-config at 537fcd532b55e303fd854eef20b868bdc96d36ad · jitsi/docker-jitsi-meet · GitHub

Yes, I have set it

export GOOGLE_APPLICATION_CREDENTIALS=/root/6433/deployment-scripts/deployment/.jitsi-meet-cfg/jigasi/application_default_credentials.json

inside application_default_credentials.json below properties are given

“type”: “service_account”,
“project_id”: “dogwood-boulder-342709”,
“private_key_id”: “c460df40e3631a280f1e7d781dd89f1b795c0db4”,
“private_key”: "-----BEGIN PRIVATE KEY-----…
“client_email”: “bcv-dd@dogwood-boulder-342709.iam.gserviceaccount.com”,
“client_id”: “107795043235539750600”,
“auth_uri”: “Sign in - Google Accounts”,
“token_uri”: “https://oauth2.googleapis.com/token”,
“auth_provider_x509_cert_url”: “https://www.googleapis.com/oauth2/v1/certs”,
“client_x509_cert_url”: “https://www.googleapis.com/robot/v1/metadata/x509/bcc-boithok%40atlantean-depot-342806.iam.gserviceaccount.com

You are supposed to fill a number of env variables. Did you set them? GC_PROJECT_IDk GC_PRIVATE_KEY_ID, GC_PRIVATE_KEY, GC_CLIENT_EMAIL, GC_CLIENT_ID, GC_CLIENT_CERT_URL

Based on the output looks like you are missing the last one.

Sorry for copy-paste mistake, client_x509_cert_url this property also has value in application_default_credentials.json file. In application_default_credentials.json file I see project_id, private_key_id, private_key etc properties with value. I suppose that private_key_id and GC_PRIVATE_KEY_ID, private_key and GC_PRIVATE_KEY, also corresponding properties are same. Is it right?

You need to set the individual env vars. You haven’t, otherwise you wouldn’t be seeing the error.

I have set all variables in .bashrc file and below all variables given

GOOGLE_APPLICATION_CREDENTIALS=/root/6433/deployment-scripts/deployment/.jitsi-meet-cfg/jigasi/application_default_credentials.json

GC_PROJECT_ID=“atlantean-depot-342806”
GC_PRIVATE_KEY_ID=“2145b8b1826c15015f57ff6d7c139d55575ec82b”
GC_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSk-----END PRIVATE KEY-----\n"

GC_CLIENT_EMAIL="bcdc-axboithok@atlantean-depot-342806.iam.gserviceaccount.com"
GC_CLIENT_ID=“102514469269664255420”
GC_CLIENT_CERT_URL=“https://www.googleapis.com/robot/v1/metadata/x509/bcc-boithok%40atlantean-depot-342806.iam.gserviceaccount.com

But still getting same error

Transcriptions: One or more environment variables are undefined

and jigasi container continually restarting. As you said I do but still have in same situation.

If you are using our Docker setup then they need to be in the .env file, not your .bashrc file.

Thanks @saghul after putting variable in .env file it’s working fine. But getting other problem, in jigasi log it’s saying invalid PKCS data like below

Error reading credential file from environment variable GOOGLE_APPLICATION_CREDENTIALS, value ‘/config/key.json’: Invalid PKCS#8 data

After investigation I found out that in key.json file I show extra \ character in every \n like below image.

Screenshot from 2022-03-07 18-06-47

This causing Invalid PKCS data. How to solve this problem?

Sorry, I don’t know that.

@saghul Hello, How can we change language from English to other language?