grist-core
grist-core copied to clipboard
New setup [pyodide sandbox] = warn: Sandbox sending SIGKILL
Hello Grist team.
I try to install gristlabs/grist on remote VPS (use Coolify)
Running Grist as user 1001 with primary group 1001
Host folders same user 1001 with primary group 1001
Setup stops on row:
2024-07-29 18:07:59.226 - debug: Sandbox exited with code null signal SIGKILL sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
The installation does not complete, what could be the problem?
2024-07-29 18:07:50.816 - debug: 3-pipe Sandbox started sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 18:07:55.065 - info: Sandbox stderr: [pyodide sandbox] [package] Loading astroid, asttokens, chardet, et_xmlfile, executing, friendly_traceback, iso8601, lazy_object_proxy, openpyxl, phonenumberslite, pure_eval, python_dateutil, roman, six, sortedcontainers, stack_data, typing_extensions, unittest_xml_reporting, wrapt sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 18:07:55.917 - info: Sandbox stderr: [pyodide sandbox] [package] Loaded et_xmlfile, executing, astroid, iso8601, pure_eval, python_dateutil, roman, six, sortedcontainers, stack_data, typing_extensions, unittest_xml_reporting, wrapt, asttokens, chardet, friendly_traceback, openpyxl, lazy_object_proxy, phonenumberslite sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 18:07:58.188 - info: Sandbox stderr: [pyodide sandbox] [py] [INFO] [main] Ready sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 18:07:58.201 - debug: NSandbox pyCall sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test, funcName=get_version, loadMs=7384
2024-07-29 18:07:58.202 - debug: Sandbox shutdown starting sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 18:07:59.203 - warn: Sandbox sending SIGKILL sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 18:07:59.226 - debug: Sandbox exited with code null signal SIGKILL sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
@Vladimir-Va those messages may be normal, Grist currently creates and then destroys a "sandbox" on startup just to make sure it is correctly configured. But you're saying the installation doesn't work, Grist doesn't come up? Are there any error messages just before the Sandbox set?
@paulfitz Thank you for feedback The full log is below, this is the furthest I could get so far.
Running Grist as user 1001 with primary group 1001
Welcome to Grist.
Setting up database...
Database setup complete.
2024-07-29 21:23:46.957 - info: Loading config file from /persist/config.json
2024-07-29 21:23:49.379 - info: == Grist version is 1.1.16 (commit unknown)
2024-07-29 21:23:49.389 - debug: skipping incomplete language ar (set GRIST_OFFER_ALL_LANGUAGES if you want it)
2024-07-29 21:23:49.397 - debug: skipping incomplete language cs (set GRIST_OFFER_ALL_LANGUAGES if you want it)
2024-07-29 21:23:49.416 - debug: skipping incomplete language fa (set GRIST_OFFER_ALL_LANGUAGES if you want it)
2024-07-29 21:23:49.436 - debug: skipping incomplete language nl (set GRIST_OFFER_ALL_LANGUAGES if you want it)
2024-07-29 21:23:49.469 - debug: skipping incomplete language th (set GRIST_OFFER_ALL_LANGUAGES if you want it)
2024-07-29 21:23:50.287 - info: OIDCConfig: initialized with issuer https://sso.server.tld/application/o/grist/.well-known/openid-configuration
2024-07-29 21:23:50.311 - warn: did not find an appropriately named example workspace in deployment
2024-07-29 21:23:50.321 - info: No plugins found in directory: /grist/.grist/plugins
2024-07-29 21:23:50.337 - info: Found 2 valid plugins on the system
2024-07-29 21:23:50.338 - debug: PLUGIN builtIn/core -- /grist/plugins/core
2024-07-29 21:23:50.338 - debug: PLUGIN bundled/grist-bundled -- /grist/node_modules/@gristlabs/grist-widget/dist/plugins/grist-bundled
2024-07-29 21:23:50.393 - info: Server timeouts: keepAliveTimeout 305000 headersTimeout 306000
2024-07-29 21:23:50.396 - info: server(home,docs,static) available at 0.0.0.0:8484
2024-07-29 21:23:50.425 - warn: Failed to create GoogleAuth endpoint: GOOGLE_CLIENT_SECRET is not defined
2024-07-29 21:23:50.427 - info: DocWorkerMap.addWorker testDocWorkerId_8484
2024-07-29 21:23:50.436 - info: activity docCount=0, orgCount=1, orgInGoodStandingCount=1, userCount=5, userWithLoginCount=5
2024-07-29 21:23:50.437 - info: DocWorkerMap.setWorkerAvailability testDocWorkerId_8484 true
2024-07-29 21:23:50.446 - info: Server timeouts: keepAliveTimeout 305000 headersTimeout 306000
2024-07-29 21:23:50.446 - info: pluginServer available at 0.0.0.0:42275
2024-07-29 21:23:50.448 - warn: Setting an ALLOWED_WEBHOOK_DOMAINS wildcard without a GRIST_HTTPS_PROXY exposes your internal network
2024-07-29 21:23:50.448 - info: == appRoot: /grist
2024-07-29 21:23:50.449 - info: == i18:namespace: client,server
2024-07-29 21:23:50.449 - info: == docsRoot: /doc
2024-07-29 21:23:50.449 - info: == defaultBaseDomain: grist.server.tld
2024-07-29 21:23:50.449 - info: == tag: unknown
2024-07-29 21:23:50.449 - info: == database: postgres://192.168.0.4:5432/grist
2024-07-29 21:23:50.449 - info: == userRoot: /grist/.grist
2024-07-29 21:23:50.450 - info: == bundledRoot: /grist/node_modules/@gristlabs/grist-widget/dist
2024-07-29 21:23:50.450 - info: == instanceRoot: /persist
2024-07-29 21:23:50.450 - info: == loginMiddlewareComment: oidc
2024-07-29 21:23:50.450 - info: == docWorkerId: testDocWorkerId_8484
2024-07-29 21:23:50.450 - info: == pluginUrl: http://0.0.0.0:42275/
2024-07-29 21:23:50.450 - info: == willServePlugins: true
2024-07-29 21:23:50.451 - info: == grist.access.supportEmail: [email protected] [GRIST_SUPPORT_EMAIL]
2024-07-29 21:23:50.451 - info: == grist.access.listPublicSites: false [default] [GRIST_LIST_PUBLIC_SITES]
2024-07-29 21:23:50.452 - info: == grist.access.installAdminEmail: [email protected] [GRIST_DEFAULT_EMAIL]
2024-07-29 21:23:50.452 - info: == grist.integrations.sql.timeout: 1000 [default] [GRIST_SQL_TIMEOUT_MSEC]
2024-07-29 21:23:50.452 - info: == grist.integrations.allowedWebhookDomains: * [ALLOWED_WEBHOOK_DOMAINS]
2024-07-29 21:23:50.452 - info: == grist.integrations.proxy: - [GRIST_HTTPS_PROXY]
2024-07-29 21:23:50.452 - info: == grist.locale.offerAllLanguages: - [GRIST_OFFER_ALL_LANGUAGES]
2024-07-29 21:23:50.452 - info: == grist.login.system.oidc.spHost: https://grist.server.tld/oauth2/callback [GRIST_OIDC_SP_HOST]
2024-07-29 21:23:50.452 - info: == grist.login.system.oidc.issuer: https://sso.server.tld/application/o/grist/.well-known/openid-configuration [GRIST_OIDC_IDP_ISSUER]
2024-07-29 21:23:50.453 - info: == grist.login.system.oidc.clientId: SOMEKEY [GRIST_OIDC_IDP_CLIENT_ID]
2024-07-29 21:23:50.453 - info: == grist.login.system.oidc.clientSecret: ***** [GRIST_OIDC_IDP_CLIENT_SECRET]
2024-07-29 21:23:50.453 - info: == grist.login.system.oidc.namePropertyKey: - [GRIST_OIDC_SP_PROFILE_NAME_ATTR]
2024-07-29 21:23:50.453 - info: == grist.login.system.oidc.emailPropertyKey: email [default] [GRIST_OIDC_SP_PROFILE_EMAIL_ATTR]
2024-07-29 21:23:50.453 - info: == grist.login.system.oidc.endSessionEndpoint: [default] [GRIST_OIDC_IDP_END_SESSION_ENDPOINT]
2024-07-29 21:23:50.453 - info: == grist.login.system.oidc.skipEndSessionEndpoint: true [GRIST_OIDC_IDP_SKIP_END_SESSION_ENDPOINT]
2024-07-29 21:23:50.453 - info: == grist.login.system.oidc.ignoreEmailVerified: true [GRIST_OIDC_SP_IGNORE_EMAIL_VERIFIED]
2024-07-29 21:23:50.453 - info: == grist.login.skipSession: - [GRIST_IGNORE_SESSION]
2024-07-29 21:23:50.454 - info: == grist.login.forced: false [GRIST_FORCE_LOGIN]
2024-07-29 21:23:50.454 - info: == grist.externalStorage.minio.bucket: - [GRIST_DOCS_MINIO_BUCKET]
2024-07-29 21:23:50.454 - info: == grist.externalStorage.disable: - [GRIST_DISABLE_S3]
2024-07-29 21:23:50.454 - info: == grist.externalStorage.active: false
2024-07-29 21:23:50.461 - debug: 3-pipe Sandbox started sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 21:23:54.510 - info: Sandbox stderr: [pyodide sandbox] [package] Loading astroid, asttokens, chardet, et_xmlfile, executing, friendly_traceback, iso8601, lazy_object_proxy, openpyxl, phonenumberslite, pure_eval, python_dateutil, roman, six, sortedcontainers, stack_data, typing_extensions, unittest_xml_reporting, wrapt sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 21:23:55.409 - info: Sandbox stderr: [pyodide sandbox] [package] Loaded astroid, asttokens, chardet, et_xmlfile, iso8601, executing, pure_eval, roman, six, sortedcontainers, stack_data, typing_extensions, unittest_xml_reporting, python_dateutil, wrapt, friendly_traceback, openpyxl, phonenumberslite, lazy_object_proxy sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 21:23:57.605 - info: Sandbox stderr: [pyodide sandbox] [py] [INFO] [main] Ready sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 21:23:57.609 - debug: NSandbox pyCall sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test, funcName=get_version, loadMs=7147
2024-07-29 21:23:57.610 - debug: Sandbox shutdown starting sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 21:23:58.612 - warn: Sandbox sending SIGKILL sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
2024-07-29 21:23:58.658 - debug: Sandbox exited with code null signal SIGKILL sandboxPid=36, flavor=pyodide, command=undefined, entryPoint=(default), docId=test
@Vladimir-Va when I try:
docker run -e GRIST_SANDBOX_FLAVOR=pyodide --name /grist --rm -p 8484:8484 -it gristlabs/grist
I get a log file that looks a lot like yours, and a working Grist app. Does the docker image actually terminate for you? The SIGKILL message at the end relates to a test sandbox, not the Grist app.
Thank you @paulfitz There may be some problem with the auto setup of traefik proxy in coolify.