Eugene Kim
12/06/2023, 10:15 PMdocker run -i -t -p 3000:3000 -p 5432:5432 -e GDCN_LICENSE_KEY="${GDCN_LICENSE_KEY}" -v gd-volume:/data gooddata/gooddata-cn-ce:latestimage: gooddata/gooddata-cn-ce:3.0
on an M1 Mac and getting this stacktrace and we are unable to get gooddata spun up. Any insight would be much appreciated!Ivana Gasparekova
12/06/2023, 10:58 PMEugene Kim
12/07/2023, 3:28 PMgooddata:
image: gooddata/gooddata-cn-ce:3.0
environment:
- LICENSE_AND_PRIVACY_POLICY_ACCEPTED=YES
- GDCN_PUBLIC_URL=<http://localhost:19900>
- GDCN_LICENSE_KEY=${GDCN_LICENSE_KEY}
ports:
- 19900:3000
- 19954:5432
healthcheck:
test:
[
"CMD",
"curl",
"-f",
"--header",
'"Authorization: Bearer <XXXX>"',
"<http://localhost:3000/api/v1/profile>",
]
interval: 30s
timeout: 10s
retries: 5
start_period: 5m
start_interval: 10s
networks:
- api
depends_on:
psql:
condition: service_healthy
volumes:
- gd-volume:/data
Eugene Kim
12/07/2023, 3:28 PMEugene Kim
12/07/2023, 3:28 PMRobert Moucha
12/07/2023, 4:25 PMGDCN_DISABLE_DEMO_USER=1
And one more hint - gooddata-cn-ce container has built-in health check that should be automatically consumed by docker-compose. So you don't need custom health check.Eugene Kim
12/12/2023, 6:22 PMIvana Gasparekova
12/13/2023, 1:26 PMRobert Moucha
12/14/2023, 2:44 PMEugene Kim
12/14/2023, 2:45 PMRobert Moucha
12/14/2023, 2:48 PMEugene Kim
12/14/2023, 2:54 PM$ docker run -i -t -p 3000:3000 -p 5432:5432 -e GDCN_LICENSE_KEY="<license_key>" -v gd-volume:/data gooddata/gooddata-cn-ce:latest
command with no additional config without issueRobert Moucha
12/14/2023, 3:00 PMEugene Kim
12/14/2023, 3:01 PMRobert Moucha
12/14/2023, 3:19 PMGDCN_PUBLIC_URL=<http://localhost:19900>
correctly?
The bootstrap-org script that runs early on boot, should output like:
s6-rc: info: service bootstrap-org: starting
+ : 19900
+ : localhost
+ H_JSON='Content-type: application/json'
+ H_GDC_JSON='Content-type: application/vnd.gooddata.api+json'
+ FAKE_HOST='X-Forwarded-Host: localhost:19900'
...more lines...
But your outpu says
+ : 3000
...
+ FAKE_HOST='X-Forwarded-Host: localhost:3000'
Please check the real values in Config.Env
array using docker container inspect
command (or double check you passed the env variable correctly when starting container).Eugene Kim
12/14/2023, 3:35 PM"Config": {
"Hostname": "607e362487e7",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": true,
"AttachStderr": true,
"ExposedPorts": {
"3000/tcp": {},
"5432/tcp": {},
"8079/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"GDCN_LICENSE_KEY=key/xxx",
"LICENSE_AND_PRIVACY_POLICY_ACCEPTED=YES",
"GDCN_PUBLIC_URL=<http://localhost:19900>",
"PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"LANG=C.UTF-8",
"GPG_KEY=xxx",
"PYTHON_VERSION=3.11.6",
"PYTHON_PIP_VERSION=23.2.1",
"PYTHON_SETUPTOOLS_VERSION=65.5.1",
"PYTHON_GET_PIP_URL=<https://github.com/pypa/get-pip/raw/9af82b715db434abb94a0a6f3569f43e72157346/public/get-pip.py>",
"PYTHON_GET_PIP_SHA256=xxx",
"DEMO=true",
"S6_BEHAVIOUR_IF_STAGE2_FAILS=2",
"S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0",
"S6_STAGE2_HOOK=/opt/scripts/stage2-hook.sh",
"ALLOW_REDIRECT_URL=<http://localhost:8443>",
"GDCN_TOKEN_SECRET=admin123",
"GDCN_ENABLE_CSV_EXPORT_API=1",
"GDCN_ENABLE_ARROW=1",
"GDCN_DISABLE_DEMO_USER=0",
"GDC_FEATURES_VALUES_ENABLE_ANALYTICAL_DASHBOARD_PERMISSIONS=true",
"GDC_FEATURES_VALUES_ENABLE_COMPOSITE_GRAIN=false",
"GDC_FEATURES_VALUES_ENABLE_PDM_REMOVAL_DEPRECATION_PHASE=true",
"JAVA_OPTS=-Xmx256m -Xms128m -XX:+UseStringDeduplication -XX:+ExplicitGCInvokesConcurrent -XX:+ParallelRefProcEnabled -XX:+ExitOnOutOfMemoryError",
"METADATA_API_JAVA_OPTS=-Xmx384m -Xms128m -XX:+UseStringDeduplication -XX:+ExplicitGCInvokesConcurrent -XX:+ParallelRefProcEnabled -XX:+ExitOnOutOfMemoryError",
"APP_LOGLEVEL=WARN",
"PULSAR_LOGLEVEL=WARN"
],
...
"Ports": {
"3000/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "19900"
}
],
"5432/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "19954"
}
],
"8079/tcp": null
},
Eugene Kim
12/14/2023, 3:38 PMManuel Cintron
12/18/2023, 4:42 PMGDCN_DISABLE_DEMO_USER: 1
does indeed get image to eventually start.
As far as I can tell when the demo user creation is enabled the /opt/bootstrap/bootstrap.sh
script is failing when calling the make_dex_user
function. The API is not returning a json with an authenticationId
but rather returning this error message {"title":"Forbidden","status":403,"detail":"License is not valid. Reason: License doesn't allow running CE image","traceId":"20783f834def6dee"}
. Trying to perform api calls from the host machine to localhost:3000
using the bootstrap token also fail with the same error message.
I would assume then that the issue is likely that our current GD CN key is not enabled to be used with CE.
Heres the compose file I used to reproduce it. This was tested with new volumes every time to ensure no carryover state from previous runs
version: '3.7'
services:
gooddata-cn-ce:
image: gooddata/gooddata-cn-ce:3.1.0
environment:
LICENSE_AND_PRIVACY_POLICY_ACCEPTED: "YES"
GDCN_DISABLE_DEMO_USER: 1
GDCN_LICENSE_KEY: "key/eyJ...RzQ=="
volumes:
- "gd-cn-data:/data:rw"
volumes:
gd-cn-data:
Robert Moucha
01/04/2024, 7:55 AM