[Docker] [configbaker] [Win] Setup-all.sh Permission Denied

109 views
Skip to first unread message

Juan Pablo Tosca Villanueva

unread,
Sep 10, 2023, 8:35:13 PM9/10/23
to Dataverse Users Community
Hi everyone!

Just wanted to check if anyone has the same issues when downloading the latest Dataverse version and following the instructions at Development Usage — Dataverse.org.

So far, all the other containers are able to run with the exception of configbaker-1 and configbaker-2. The configbaker-1 is able to connect to the DV-API and retrieve the version at "dataverse:8080/api/info/version" but when it tries to run the init.sh script it shows the following error:

"/scripts/bootstrap/dev/init.sh: line 10: /scripts/bootstrap/base/setup-all.sh: Permission denied"

I have tried running:

docker run -it --rm gdcc/configbaker:unstable fix-fs-perms.sh dv /scripts/bootstrap/base/setup-all.sh

This so far hasn't changed anything. 

For science I have added a line to /scripts/bootstrap/dev/init.sh to change the permissions before it executes the file for the sake of testing which allows me to get to the next step.

Then I get the same error in another line "bootstrap.sh: line 59: /scripts/bootstrap/dev/init.sh: Permission denied". I changed the permissions and at the end, I got this error:  [dumb-init] bootstrap.sh: Permission denied.

Hope someone can let me know if they are experiencing something similar or have any idea of what could be wrong with my installation. I will post any updates if I find anything. 







o.be...@fz-juelich.de

unread,
Sep 11, 2023, 2:04:39 AM9/11/23
to Dataverse Users Community
Hi there!
 
Just wanted to check if anyone has the same issues when downloading the latest Dataverse version and following the instructions at Development Usage — Dataverse.org.

I'm sorry, but I cannot reproduce the problem you describe on my Linux 6.4.11-200.fc38.x86_64, SELinux enabled, Docker 24.0.5 (installed via docker-ce, not moby/podman) machine.
 
So far, all the other containers are able to run with the exception of configbaker-1 and configbaker-2. The configbaker-1 is able to connect to the DV-API and retrieve the version at "dataverse:8080/api/info/version" but when it tries to run the init.sh script it shows the following error:

"/scripts/bootstrap/dev/init.sh: line 10: /scripts/bootstrap/base/setup-all.sh: Permission denied"

This error message is not about the underlying filesystem not being off limits, but indicates the called script not being executable for some reason.
 
I have tried running:

docker run -it --rm gdcc/configbaker:unstable fix-fs-perms.sh dv /scripts/bootstrap/base/setup-all.sh

This isn't what this particular script is intended to do nor will it help - configbaker containers are intended to run as root (uid 0), not uid 1000.
 
For science I have added a line to /scripts/bootstrap/dev/init.sh to change the permissions before it executes the file for the sake of testing which allows me to get to the next step.

That is a little blurry - what did you add and how?
 
Then I get the same error in another line "bootstrap.sh: line 59: /scripts/bootstrap/dev/init.sh: Permission denied". I changed the permissions and at the end, I got this error:  [dumb-init] bootstrap.sh: Permission denied.

Same as above.
 
Hope someone can let me know if they are experiencing something similar or have any idea of what could be wrong with my installation. I will post any updates if I find anything.

We're gonna need more intel from you here:

A) Please provide info about your Docker host (OS, Kernel, Docker version, any other related deets)
B) Can you verify that the scripts have the executable bit set inside the container?
C) Can you verify that the container is running as root? (It shouldn't matter, but lets see if there might be a problem)

Container folks usually have a cute little bonfire on Zulip to hang and get work done. Please join us via this invite link: https://dataverse.zulipchat.com/join/ae2kuxplwq3gesl3f3777rlb/


Best,
Oliver

Juan Pablo Tosca Villanueva

unread,
Sep 11, 2023, 10:29:49 AM9/11/23
to Dataverse Users Community
Hi Oliver,

Thanks for your reply and for letting me know that it works for you. The testing I did, not as a solution but as a way to figure out what was happening was the following:

1) I clone the repo and run  mvn -Pct docker:run
2) All the containers initialize, and the configbaker-1 shows as active, at this point the container is just waiting for a response from dataverse:8080/api/info/version, after a few seconds the service starts, and this is the response:
{                                    
    "status": "OK",         
    "data": {                    
        "version": "5.14", 
        "build": null          
    }
                               
}                                    


3)The container then proceeds to execute the /scripts/bootstrap/dev/init.sh. and shows the first Permission error, this is the full console from the container:

2023-09-11 09:54:53 Waiting for http://dataverse:8080 to become ready in max 2m.
2023-09-11 09:54:53 Now executing bootstrapping script at /scripts/bootstrap/dev/init.sh.
2023-09-11 09:54:53 Running base setup-all.sh (INSECURE MODE)...
2023-09-11 09:54:53 2023-09-11T13:54:53Z INF [HTTP] Checking the http://dataverse:8080/api/info/version ...
2023-09-11 09:54:53 /scripts/bootstrap/dev/init.sh: line 10: /scripts/bootstrap/base/setup-all.sh: Permission denied

4) At this point is where I go to the docker console and modify /scripts/bootstrap/dev/init.sh by adding "chmod a+x "${BOOTSTRAP_DIR}"/base/setup-all.sh", after I restart the server, and the outputs changes: 

2023-09-11 10:03:41 Waiting for http://dataverse:8080 to become ready in max 2m.
2023-09-11 10:03:41 Now executing bootstrapping script at /scripts/bootstrap/dev/init.sh.
2023-09-11 10:03:41 2023-09-11T14:03:41Z INF [HTTP] Checking the http://dataverse:8080/api/info/version ...
2023-09-11 10:03:41 /scripts/bootstrap.sh: line 59: /scripts/bootstrap/dev/init.sh: Permission denied

5) This time I used the same logic on /scripts/bootstrap.sh I add "chmod a+x exec "${BOOTSTRAP_DIR}/${PERSONA}/init.sh"", then save and restart the container, and this time the console shows this:

2023-09-11 10:06:43 [dumb-init] bootstrap.sh: Permission denied

At this point, I ran out of ideas, but I will try again and see if there is anything that I am missing or if I can find a solution. 

___________________________
Edition Windows 10 Pro
Version 22H2
Installed on ‎8/‎21/‎2020
OS build 19045.3324
Experience Windows Feature Experience Pack 1000.19041.1000.0
___________________________
Docker version 24.0.5, build ced0996
___________________________


Could you please guide me through B and C? I am not sure the information I provided might give you an insight into these but just to be sure. 

  • B) Can you verify that the scripts have the executable bit set inside the container?
  • C) Can you verify that the container is running as root? (It shouldn't matter, but lets see if there might be a problem)

I joined the Zulip! Thank you so much. 
Reply all
Reply to author
Forward
0 new messages