March 6, 20251 yr Author 6 hours ago, unraid_fk34 said: Thanks for getting back to me. Checking if all the stacks are still in the mentioned path is the first thing I did when this started occurring. Everything is there. But what I got in all of my stack folders are these other weird duplicates. I don't know exactly when they started popping up but they are not part of the daily backup. --- This is how my compose tab looks btw. There is no option for anything like add stacks. Just completely blank: Oh and important to note. All my dockers are running and active. They start up normally after a reboot. Just docker compose manager isn't showing anything. Having those extra files in the folder is likely the reason that the ui is messed up. They do not belong there. As to how they got there, have you had any trouble with flash drive corruption? If i remember correctly file names like FSCK00000 are produced by a file system check. Remove that and everything that start with ._
March 6, 20251 yr 5 hours ago, bmartino1 said: I would recommend backing up the docker compose files that you do have and deleting the folder off the flash drive and do a plugin reinstall to regain webui controls back. I just did exactly that and it did the trick. Probably something corrupted in the install files or something. When it pulled the plugin fresh from the Community Apps it appeared again. Added the stacks to the projects folder afterwards and all is running again after the reboot. The only weird thing that happened after the reboot is that the Compose Plugin Settings moved from the Settings tab to the Tools tab (under System Information) after the reboot. But all is working nonetheless. Thank you
March 6, 20251 yr 31 minutes ago, primeval_god said: Having those extra files in the folder is likely the reason that the ui is messed up. They do not belong there. As to how they got there, have you had any trouble with flash drive corruption? If i remember correctly file names like FSCK00000 are produced by a file system check. Remove that and everything that start with ._ You are probably right. I had a failing boot drive recently which I replaced and switched licence to. I had it occure before the switch but after a couple reinstalls and reboots it appeared again. After the flash drive replacement it appeared pretty quickly. So probably it was the reason for all this. The only fix was manually deleting the compose folder on the boot drive and then copy my projects into the newly created compose plugin folder.
March 7, 20251 yr The ._ files aren't duplicates, they're junk metadata sidecar files created by macOS. Shouldn't affect anything.
March 7, 20251 yr Author 3 hours ago, Kilrah said: The ._ files aren't duplicates, they're junk metadata sidecar files created by macOS. Shouldn't affect anything. Maybe, maybe not. The compose plugin is not super well coded if I do say so myself. A design expectation is that the compose folder on the boot drive contains only those files created by the compose plugin itself. So far as what bugs might occur from extra files in that directory tree, here be dragons. Edited March 7, 20251 yr by primeval_god
March 13, 20251 yr Trying to install this composer https://github.com/LiammCodes/cs2-dedicated-server and using the docker-compose.yml file. Getting "Permission Error". Changed ./cs2-data:/home/steam/cs2-dedicated to ./cs2-data:/mnt/user/appdata/steam/cs2-dedicated but getting "Error app 730 state is 0x202 after update job"
March 14, 20251 yr 16 hours ago, Spao said: Trying to install this composer https://github.com/LiammCodes/cs2-dedicated-server and using the docker-compose.yml file. Getting "Permission Error". Changed ./cs2-data:/home/steam/cs2-dedicated to ./cs2-data:/mnt/user/appdata/steam/cs2-dedicated but getting "Error app 730 state is 0x202 after update job" i think you modified the wrong side of the : docker-compose syntax is host-path:container-path so the compose.yml is setup to bind-mount: ./cs2-data (on the host, unraid in this case) to /home/steam/cs2-dedicated (in the container) try setting your "volume" in the compose as follows: /mnt/user/appdata/cs2-dedicated:/home/steam/cs2-dedicated and see what you get.
March 15, 20251 yr 10 hours ago, xrichnj said: i think you modified the wrong side of the : docker-compose syntax is host-path:container-path so the compose.yml is setup to bind-mount: ./cs2-data (on the host, unraid in this case) to /home/steam/cs2-dedicated (in the container) try setting your "volume" in the compose as follows: /mnt/user/appdata/cs2-dedicated:/home/steam/cs2-dedicated and see what you get. Thanks, it was that simple. First time using compose, so I was wondering what volume is, and if you have to link it do a different path
March 15, 20251 yr 1 hour ago, Spao said: Thanks, it was that simple. First time using compose, so I was wondering what volume is, and if you have to link it do a different path volume is a space on the host where the docker data is stored. review: https://docs.docker.com/engine/storage/volumes/ some other uraid only recommend extra options per copose docker: labels: # Unraid Compose Web UI Only net.unraid.docker.webui: "http://[IP]:[PORT:80]" net.unraid.docker.icon: "https://I am the image in the top for the docker.png" folder.view: "Advanced_stack_folder_name" net.unraid.docker.managed: "composeman" *this should also auto fill and fix the compose stack UI options... Here is a Prometheus example, so note the volumes called for the Prometheus docker... the docker compose options are broken into: Unraid host path : inside docker - container path... I can define it at the container volume option or use a variable called at the end to point to the location. In this example. I made a new stack and advance set to /mnt/user/appdata/netprobe since the docker compose is in netprobe I have a config folder. I can call ./ as /mnt/user/appdata/netprobe is the root direct for the host call to point to unraid host level prometheus: restart: always container_name: netprobe-prometheus image: prom/prometheus volumes: - ./config/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml - prometheus_data:/prometheus # Persistent local storage for Prometheus data # - /mnt/user/appdata/resolv.conf:/etc/resolv.conf:ro command: - '--config.file=/etc/prometheus/prometheus.yml' - '--storage.tsdb.path=/prometheus' - '--storage.tsdb.retention.time=30d' # Adjust retention to 30 days networks: - netprobe-net dns: # - 192.168.2.3 - 192.168.2.1 - 8.8.8.8 logging: options: max-size: "50m" max-file: "1" labels: net.unraid.docker.icon: 'https://raw.githubusercontent.com/selfhosters/unRAID-CA-templates/master/templates/img/prometheus.png' folder.view: netprobe_lite net.unraid.docker.managed: 'composeman' net.unraid.docker.shell: '/bin/sh' #volume example to unraid host path... volumes: prometheus_data: driver: local driver_opts: type: none device: ./data/promethus o: bind a unriad compose stack example: https://github.com/bmartino1/netprobe_lite/blob/master/docker-compose.yml Edited March 15, 20251 yr by bmartino1 Data
March 15, 20251 yr 2 hours ago, Spao said: Thanks, it was that simple. First time using compose, so I was wondering what volume is, and if you have to link it do a different path glad it worked for you! most containers are setup to be looking for certain paths and ports on the container side, and this cannot be (easily) changed. so unless you really know what youre doing: for ca app docker templates, only change the "host path" and "host port" fields in the template, leave the "container path" and "container port" alone. for compose files, its the same idea. for volumes and ports, set the left side of the " : " to the port and/or path you want to use on unraid, and leave the right side of the " : " alone.
March 17, 20251 yr Container icons not showing due to HTML coding issue There appears to be some coding issue somewhere, either in the Compose plugin or Unraid itself when it comes to showing icons defined in the compose plugin UI. I have the icon, in jpg, stored in the appdata folder of the container, and I have set all the defined containers in the compose file set to use the same icon file. No icons show in the UR docker container list. but digging in the code shows that it's trying to. The green highlighted span above shows the corrected code based on the working icons in the UR docker container list. The red highlighted span shows the code generated by either UR or the compose plugin. For some reason, it treats the <img> tag as a <i> tag (used for displaying fonts in italics) and applies a 'fa' class along with trying to apply another class using the icon file path and filename as the descriptor. This problem is not a cache issue but a programmatic problem with how Compose passes the icon data to UR for rendering or how UR processes the data it is passed. PS. On another note, some people put icons on the boot thumb drive, but I would avoid doing so as it adds more content to the thumb drive, requiring further activity on the disk. Edited March 17, 20251 yr by aglyons
March 17, 20251 yr Feature Request I just found out that we can add the Compose tab to the main UR menu bar. I thought it odd that while it shows the compose file entries, it doesn't show any compose containers. I would like to be able to keep only template containers on the Dockers tab and have the compose containers listed on the Compose tab. While they are all Docker containers, having the option to keep them separated would be nice to keep things organized.
March 17, 20251 yr 19 minutes ago, aglyons said: I have the icon, in png, stored in the appdata folder of the container, and I have set all the defined containers in the compose file set to use the same icon file. a png does not end in .jpg. But yes, jpgs dont work as you expect. Use a real png and then it will work.
March 17, 20251 yr 22 minutes ago, Mainfrezzer said: a png does not end in .jpg. But yes, jpgs dont work as you expect. Use a real png and then it will work. typo in the post. It is and always was a jpg file. It's saved as a jpg and entered in the icon field as a jpg. The problem remains. EDIT: The icons HAVE to be png? Why is that? The icons were showing up correctly in the appdata backup plugin list, just not the UR docker containers list. Edited March 17, 20251 yr by aglyons
March 17, 20251 yr 17 minutes ago, aglyons said: EDIT: The icons HAVE to be png? Why is that? because its coded like that $image = substr($icon,-4)=='.png' ? "<img src='$icon?".filemtime("$docroot{$info['icon']}")."' class='img' onerror=this.src='/plugins/dynamix.docker.manager/images/question.png';>" : (substr($icon,0,5)=='icon-' ? "<i class='$icon img'></i>" : "<i class='fa fa-$icon img'></i>"); https://github.com/unraid/webgui/blob/master/emhttp/plugins/dynamix.docker.manager/include/DockerContainers.php Edited March 17, 20251 yr by Mainfrezzer
March 17, 20251 yr Author 3 hours ago, aglyons said: Container icons not showing due to HTML coding issue This is not an issue of the compose plugin. Icon handling is a function of the built in Dockerman subsystem. All the compose plugin does is pass the text you enter along to Dockerman via a container label.
March 17, 20251 yr Author 2 hours ago, aglyons said: Feature Request I just found out that we can add the Compose tab to the main UR menu bar. I thought it odd that while it shows the compose file entries, it doesn't show any compose containers. I would like to be able to keep only template containers on the Dockers tab and have the compose containers listed on the Compose tab. While they are all Docker containers, having the option to keep them separated would be nice to keep things organized. I dont plan on implementing this sorry. Display and control of individual containers (or groups of them) is beyond the scope of this plugin. While I accepted the code for making a compose tab on the menu bar (because it was kindly provided to me by another developer) my opinion remains that the Compose plugin belongs under the Docker tab as an addition to Dockerman functionality not a standalone.
March 18, 20251 yr Perhaps this is obvious to more advanced users, but it took me a long time to realize that using a hyphen in my stack names was causing errors. When I executed "docker compose up" in the command line / terminal with those stacks, they would run successfully but the Compose GUI wouldn't show the green arrows next to them and wouldn't allow me to use their "compose down" buttons. For anyone else searching this thread for "hyphen" or "dash," make sure to remove them.
March 18, 20251 yr some come form program lanugae caoncepts. Spaces, @, %, & *... special caharter liek the dash shouldn't be used as reading and parse code will mean somthing else. https://docs.docker.com/compose/how-tos/profiles/ Other nice hints: Debugging Docker Compose applications involves several strategies to identify and resolve issues within a multi-container environment. Here's a breakdown of common techniques: 1. Examine Container Status and Logs Use docker-compose ps to check the status of all containers defined in your docker-compose.yml file, identifying any that have exited or are not running as expected. Employ docker-compose logs to inspect the logs of specific containers or all services, helping to pinpoint errors or unexpected behavior during startup or runtime. Add --follow to stream logs in real-time. Use --since and --until to filter logs by timestamp. 2. Interactive Shell Access Gain direct access to a running container using docker-compose exec <service_name> /bin/sh or docker-compose exec <service_name> /bin/bash. This allows you to explore the container's file system, run commands, and further investigate the environment. 3. Debugging During Build If build failures occur, add DOCKER_BUILDKIT=0 before your build command to see the output of each step. Use docker-compose up --build --no-cache to force a rebuild and avoid using cached layers, ensuring you see the logs for all steps. Docker Buildx also offers a --on=error flag to initiate a debug session when a build fails, allowing you to explore the image state at the point of failure. 4. Using Docker Debug The docker debug command provides a way to enter a container or image, even if it lacks a shell. It's particularly useful for debugging slim images. It doesn't modify the original image and comes with a toolbox of common Linux tools. 5. IDE Integration Many IDEs, such as Visual Studio Code and JetBrains Rider, offer integrated Docker and Docker Compose debugging tools. These tools allow you to set breakpoints, step through code, and inspect variables within your containers. 6. Network Inspection Ensure containers can communicate with each other by checking the Docker network. Use docker network inspect <network_name> to view network configurations and verify container connectivity. 7. Resource Limits If containers are crashing or behaving erratically, investigate resource limits. Use docker stats to monitor CPU, memory, and I/O usage of your containers. Adjust resource limits in your docker-compose.yml file if necessary. 8. Debug Flags The -D or --debug flag for Docker commands provides more verbose output, which can be helpful for diagnosing issues. It is a synonym for --log-level=debug. 9. Check Docker Daemon Logs The Docker daemon logs may contain information about errors or issues that are not visible in container logs. Access these logs using journalctl -u docker.service on systems using systemctl, or check /var/log/messages, /var/log/daemon.log, or /var/log/docker.log on older systems. 10. Docker Extension Dev Debug For debugging Docker extensions, use docker extension dev debug <extension_name> to open Chrome DevTools when the Extensions tab is selected. docker extension dev reset <extension_name> stops this behavior.
March 24, 20251 yr Is there any way for me to schedule one of the stacks I have in Compose Manager to restart every X days or so?
March 28, 20251 yr I am trying to isolate the compose containers to only use certain cores. I tried cpuset_cpus: "10,11,12,13" but when running compose up it fails saying that the property is not allowed. Most likely that's due to this plugin using a strict schema. Is there another way to set this so the containers only use those cores? Edited March 29, 20251 yr by Bradley Hayes
March 29, 20251 yr Author 22 hours ago, Bradley Hayes said: I am trying to isolate the compose containers to only use certain cores. I tried cpuset_cpus: "10,11,12,13" but when running compose up it fails saying that the property is not allowed. Most likely that's due to this plugin using a strict schema. Is there another way to set this so the containers only use those cores? The proper compose syntax for cpu set is cpuset: 10,11,12,13
March 29, 20251 yr Author On 3/24/2025 at 5:44 PM, emsixteen said: Is there any way for me to schedule one of the stacks I have in Compose Manager to restart every X days or so? There is no such feature within this plugin. You would have to script something yourself.
March 30, 20251 yr Hello, I have a set of Docker Compose containers with a specific network configuration like: networks: br0: ipv4_address: 192.168.x.x dns: - 192.168.x.x When I start this container, I get an error message like “Error response from deamon: could not find a network matching network mode ...” (screenshot attached). But when I change something, like disable/enable dns, the docker container starts without problems. What is the problem, unfortunately I have not found anything in the forum. Thanks for any constructive answers. kleiner-onliner
March 30, 20251 yr 30 minutes ago, kleiner-onliner said: Hello, I have a set of Docker Compose containers with a specific network configuration like: networks: br0: ipv4_address: 192.168.x.x dns: - 192.168.x.x When I start this container, I get an error message like “Error response from deamon: could not find a network matching network mode ...” (screenshot attached). But when I change something, like disable/enable dns, the docker container starts without problems. What is the problem, unfortunately I have not found anything in the forum. Thanks for any constructive answers. kleiner-onliner when using the preexisting unraid networks.. you need 2 things. one under the image geting teh static ip form the lan over that network's example: networks: br0: #set to unraid default custom docker netwroking interface in use (br0, bond0, eth0, etc...) ipv4_address: 192.168.2.50 # Change this as needed for static IP And the network call at the bottom of the config... example: networks: br0: external: true heres a full compose config example using that for a pihole dev test image using alpine... services: pihole: container_name: pihole_v6 hostname: 'pi.hole' image: devzwf/pihole-dot-doh:2025.03.0-1.v6dev networks: br0: #set to unraid default custom docker netwroking interface in use (br0, bond0, eth0, etc...) ipv4_address: 192.168.2.50 # Change this as needed for static IP ports: # DNS Ports - "53:53/tcp" - "53:53/udp" # Default HTTP Port - "80:80/tcp" # Default HTTPS Port. FTL will generate a self-signed certificate - "443:443/tcp" # Uncomment the below if using Pi-hole as your DHCP Server #- "67:67/udp" environment: # Set the appropriate timezone for your location (https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) TZ: "America/Chicago" # Set a password to access the web interface. Not setting one will result in a random password being assigned FTLCONF_webserver_api_password: "test" # DoT: unbound (127.0.0.1#5335), DoH: cloudflared (127.1.1.1#5153) FTLCONF_dns_upstreams: "127.1.1.1#5153;127.0.0.1#5335" FTLCONF_dns_listeningMode: "all" FTLCONF_misc_etc_dnsmasq_d: 'true' labels: # Unraid Compose Web UI Only net.unraid.docker.webui: "http://[IP]:[PORT:80]/admin" net.unraid.docker.icon: "https://raw.githubusercontent.com/devzwf/unraid-docker-templates/main/images/pihole-logo-bw.png" folder.view: "pihole-dot-doh" net.unraid.docker.managed: "composeman" volumes: #- "/mnt/vm-zfs/Dockers/appdata/pihole-dot-doh/entrypoint.sh:/entrypoint.sh:ro" #updated in lattest docker tag:2025.02.4-v6dev # Bind mount entrypoint.sh using fixed script above for teting... - "/mnt/vm-zfs/Dockers/appdata/pihole-dot-doh/etc-pihole:/etc/pihole:rw" - "/mnt/vm-zfs/Dockers/appdata/pihole-dot-doh/etc-dnsmasq.d:/etc/dnsmasq.d:rw" - "/mnt/vm-zfs/Dockers/appdata/pihole-dot-doh/config:/config:rw" dns: # - 192.168.2.3 - 192.168.2.1 - 8.8.8.8 cap_add: # See https://github.com/pi-hole/docker-pi-hole#note-on-capabilities # Required if you are using Pi-hole as your DHCP server, else not needed - NET_ADMIN - CAP_SYS_NICE - CAP_SYS_TIME restart: unless-stopped networks: br0: external: true https://docs.docker.com/compose/how-tos/networking/ https://docs.docker.com/reference/compose-file/networks/
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.