Hey @William_Cheadle,
First, I want to acknowledge the frustration. You’re right that these instructions assume you already live in this world, and that’s on us. Let me fill in the blanks. The good news is that all three problems you hit come from a single cause, and it’s an easy fix, and once you’re past it, the rest happens in a web page, not the command line.
The key is the last error you posted:
“permission denied while trying to connect to the Docker daemon socket”
On your Asustor, Docker commands have to be run with administrator (root) privileges, and the account your terminal logs in as doesn’t have that permission on its own. That one thing explains everything you saw:
docker ps → “permission denied” (it’s being blocked)
docker logs … | grep setup_token → “nothing comes back”, that command was actually blocked too, but the way that line is written, the error got hidden, so it just looked empty. Nothing was wrong with the container name, and you didn’t need to switch to “PortainerCE.”
The fix is to put sudo in front of each Docker command. sudo just means “run this as administrator.” It’ll ask for a password the first time, use your Asustor ADM admin password (the same one you log into the NAS’s web page with). You won’t see anything on screen as you type the password; that’s normal, just type it and press Enter.
Step 1, get the Portainer setup token:
- Run:
sudo docker ps
Enter your admin password when asked. You should now see a list of running containers instead of the permission error. Look at the column headed NAMES, that’s the real name of your Portainer container. (The “PortainerCE” you found in File Explorer is the app’s folder name, which can be different from the container name.)
- Grab the token using that real name. If NAMES shows
portainer, run:
sudo docker logs portainer 2>&1 | grep setup_token
If it shows a different name, swap it in. This should now print a line containing the token.
- That token is only good for about 5 minutes. If step 2 is still empty even with sudo, the window has closed, restart Portainer and try again immediately:
sudo docker restart portainer
then repeat step 2. Copy the token value and paste it into the Portainer setup page in your browser to finish creating your login.
Step 2, what “deploy” actually means:
That word has been tripping you up, understandably. “Deploy” is not a command you type (that’s why the terminal keeps saying “not found”). It just means “start the container from these settings.” And you don’t have to do it in the terminal at all, Portainer gives you a web page for it. This is the easy part:
- Open Portainer in your browser and log in.
- On the left, click Stacks, then Add stack.
- Give it a name, e.g.
roonserver.
- In the big text box (the “web editor”), paste the file below.
- Click the Deploy the stack button at the bottom. That button is what “deploy” means.
The file to paste:
services:
roonserver:
image: ghcr.io/roonlabs/roonserver:latest
container_name: roonserver
network_mode: host
restart: unless-stopped
environment:
- TZ=America/Los_Angeles
volumes:
- /volume1/Roon:/Roon
- /volume1/Music:/Music
You only need to adjust two lines, the ones under volumes. On each of those lines, the part before the colon is a real folder on your NAS, and the part after the colon must stay exactly as written:
/volume1/Roon → change this to the folder where you want Roon’s database to live. It must be on your actual disk (on Asustor that means a path starting with /volume1/), because some NAS systems keep other folders in temporary memory that gets wiped on reboot, you don’t want your Roon database there.
/volume1/Music → change this to the folder that holds your music.
Leave everything else exactly as shown, network_mode: host is what lets Roon find your audio devices, so don’t remove it.
If you’d rather not edit the file by hand, Roon has a tool that writes it for you: go to RoonServer Docker Configuration Generator, pick your platform, type in those two folder paths, and it prints the exact file to paste into the Stacks box in step 4.
Let’s get Portainer open first with the sudo steps, then we’ll do the Stacks screen together, one step at a time. You don’t need to know any of this in advance; I’ll walk you through each screen.
Thanks for sticking with us, William! 