

Taking a look at your docker-compose.yml
I see this volume mount:
volumes:
- /volume1/SN/Docker/searxng-stack/searxng:/etc/searxng:rw
Whereas /volume1/SN/Docker/searxng-stack/searxng
is the directory on your system docker is attempting to use to store the files inside the container from /etc/searxng
.
Example of a volume mount that’ll likely work better for you;
volumes:
- ~/docker/config/searxng:/etc/searxng:rw
The tilde (~) acts as your current users home directory (aka: /home/YourUser
) not owned by root and where docker persistent volumes should be stored.
After making the change over to that directory and configuring SearXNG how you like re-create your docker container with sudo docker compose up -d —force-recreate
Apologies for the poor formatting, typing this on mobile.
Edit:
Note: if you want to expose the port do not add the 127.0.0.1
like how I have in my docker-compose.yml
.
I agree, hence why I left the note at the bottom of that comment, yes it does encourage bad practices but, if all OP cares about is that it works then it should be fine.
In my other comment I instructed OP to move the volume to their users home directory so they don’t run into permission issues like this again.