Reads to me like the container it's running as a user that doesn't have permission to the volume path.
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Is there a command to check that?
I'm not sure if there's a correct way. What I've done in the past is use "ps" to find out what user the processes are running as.
Probably just a permission issue. The doc seems to recommend giving relaxed permission to the temp folder volume:
sudo chmod 777 /your/linguacafe/temp/folder -R
sudo chmod 777 /your/linguacafe/temp/folder -R
I have done that and it doesn't seem to help. Edited main post to reflect that.
Now you seems to get MySQL permission issue (or wrong database password, but your issue is probably not that). When using docker compose, MySQL won't see access coming from linguacafe's container as coming from localhost, but instead it's coming from a different IP address inside docker subnet. So make sure your MySQL user has proper privilege, e.g. by granting all permissions to 'user'@'%'
.
Did you change the mysql container database name, username and password to something other than the default linguacafe
?
That would break it, as it's using those specific credentials to login to the database. Which would cause Access denied for user ‘linguacafe’@‘ip adress censored’ (using password: YES) (SQL: select count(*) as aggregate from users)
Try with the default, you'll need to wipe the mysql data under /home/user/Documents/Docker/LinguaCafe/database/
after stopping the container first.
environment:
MYSQL_DATABASE: linguacafe
MYSQL_USER: linguacafe
MYSQL_PASSWORD: linguacafe
MYSQL_ROOT_PASSWORD: linguacafe
SERVICE_NAME: linguacafe
You seem to be missing your username in the volume paths, e.g. /home/username/Documents.
Sorry that's on me. That's one thing I removed from the pastebin file on purpose, it's here in the real one. I copy paste my path to be sure it's correct.
I think I solved the permission issue? See edit in the main post.
Hmm, can you have absolute paths like that in docker compose? Ive always used paths relative to the current working dir.
Based on your update you may need to bring the containers down and up to fix the database.
Sometimes when opening LinguaCafe the first time there is an error message about users database table. If this happens, just stop and start your containers again, it should fix the problem.
docker compose down
docker compose up -d
That error message says it the permissions of the /home/user/Documents/Docker/LinguaCafe/logs
directory. You can try changing it full r/w temporarily to test.