How not to get the welcome setup screen

hello,

I setup using a docker container like this :slight_smile:

docker run -d -p 3000:3000
-v /opt/metabase/metabase.db:/metabase-data
-e "MB_DB_FILE=/metabase-data/metabase.db/"
-e "MB_DB_TYPE=mysql"
-e "MB_DB_DBNAME=metabase"
-e "MB_DB_PORT=3306"
-e "MB_DB_USER=metabase"
-e "MB_DB_PASS=thepassword"
-e "MB_DB_HOST=localhost"
-e "MB_LDAP_ENABLED=true"
-e "MB_LDAP_GROUP_BASE=cn=admins,ou=group,dc=domain,dc=net"
-e "MB_LDAP_HOST=ldap.myorg.net"
-e "MB_LDAP_PORT=389"
-e "MB_LDAP_SECURITY=starttls"
-e "MB_LDAP_USER_BASE=ou=people,dc=domain,dc=net"
-e "MB_LDAP_ATTRIBUTE_EMAIL=mail"
-e "MB_LDAP_ATTRIBUTE_FIRSTNAME=givenName"
-e "MB_LDAP_ATTRIBUTE_LASTNAME=sn"
-e "MB_LDAP_ATTRIBUTE_LOGIN=uid"
-e "MB_LDAP_GROUP_SYNC=true"
-e "MB_LDAP_GROUP_MAPPINGS={"cn=admins,ou=group,dc=domain,dc=net":[2]}" \

I have 2 questions,
first :
I don't want to get to the welcome screen but directy into the app. I thought LDAP settings would skip this part. how can I do it ?
image

second :slight_smile:
this line : -e "MB_LDAP_GROUP_MAPPINGS={"cn=admins,ou=group,dc=domain,dc=net":[2]}" \

doesn't work neither on graphical mode or like this. it should make the admins directly admins into metabase but it doesnt work. Only log in works. on the doc it doesn't say enterprise edition.
I'm using openldap....

Thank you very much for your help

Hi @laurameta

  1. Do not include this, since you are using MySQL.
 -v /opt/metabase/metabase.db:/metabase-data
 -e "MB_DB_FILE=/metabase-data/metabase.db/" 
  1. You need to complete the setup via the API.
    https://www.metabase.com/learn/administration/metabase-api
  2. And the second looks like you will need some quote escaping for that to work.
    Since the groups are not created yet, then I would probably do that via the API too.
1 Like

hey thank you so much for this tip, I had forgotten about the API.
I am not very familiar with API, someone showed me once how to use it so if you could give me some hints / exemple how to use the API via docker or the jar just to get me started.
I don't really get how to integrate it is it via environnement variables?
thank you so much

@laurameta Please read the article. It has examples. Metabase uses RESTful API, which has nothing to do with how you are running Metabase and has nothing to do with the environment variables.
The best way to learn the API, is to just use Metabase while having your browser developer Network-tab open and looking at the request, and what data is being send/received.

Hello ,
yes I'm reading https://www.metabase.com/learn/administration/metabase-api right now.
I see there are some curl command ( I understand this part) I just don't get how to integrate this with docker run or a docker file ...

@laurameta So that has really nothing to do with Metabase, but how you have decided to setup your systems.
You would start Metabase, wait for it to startup, then run the API commands.

this should do the trick

export SETUP_TOKEN=$(curl -s -m 5 -X GET
-H "Content-Type: application/json"
http://localhost:3000/api/session/properties
| jq -r '.["setup-token"]'
)

curl -s -X POST \
    -H "Content-type: application/json" \
    http://localhost:3000/api/setup \
    -d '{
    "token": "'${SETUP_TOKEN}'",
    "user": {
        "email": "metabase@xyz.com",
        "first_name": "Metabase",
        "last_name": "Admin",
        "password": "MySecretPassword1"
    },
    "prefs": {
        "allow_tracking": true,
        "site_name": "Dev Metabase Instance"
    }
}'