this post was submitted on 10 Apr 2024
8 points (100.0% liked)

Docker

1080 readers
1 users here now

founded 1 year ago
MODERATORS
 

I have a Bluesky PDS running successfully. Now I'm trying to set up GoToSocial, an ActivityPub server that also uses sqlite. When I run

sudo docker compose up -d

I get the following error in the docker log for GoToSocial:

Error executing command: error creating dbservice: sqlite ping: Unable to open the database file (SQLITE_CANTOPEN)

Is this more likely to be a conflict between the two docker applications or something specific to GoToSocial? (I've gone through the sqlite issues I've been able to find in GoToSocial's GitHub.)

If something to do with running sqlite in two containers, do you have any tips to resolve the issue?

you are viewing a single comment's thread
view the rest of the comments
[–] nickwitha_k@lemmy.sdf.org 3 points 7 months ago (3 children)

This is the most likely. You need to ensure that the volume is mounted AND that permissions are set correctly. Docker doesn't care about username. It cares about user ID. So, if the dir/file ownership and mode does not give sufficient permissions to the UID/GID of the user in the container, you'll need to correct that.

[–] jadero@programming.dev 2 points 7 months ago (2 children)

Oh, that user ID must be the answer. I was wondering what those numbers were ☺️

More digging to figure out what the appropriate user id is...

[–] TechAdmin@lemmy.world 3 points 7 months ago (1 children)

To find the numerical user ID (uid) and group ID (gid) of an account or group you can use the 'id' command such as: id root

As for which one to use on ownership and docker, that will vary widely and would require knowing more about how things are setup. I'd try to use the same one that is running the docker commands.

[–] jadero@programming.dev 3 points 7 months ago

Thanks! Once I knew that there was such a thing, a bit of online searching got that part of it sorted. And took me into what I hope is a productive rabbit hole of permissions management. :)