Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Plugin] Docker Compose Manager

Featured Replies

Trying to compose up this yaml with this .env file.

 

I'm getting this error:

"unexpected character "-" in variable name near "- ./data/db:/data/db\n\n # Redis server\n redis:\n image: eqalpha/keydb\n restart: always\n\n # REVOLT API server (Delta)\n api:\n image: revoltchat/server\n env_file: .env\n depends_on:\n\t- database\n\t- redis\n environment:\n\t- REVOLT_MONGO_URI=mongodb://database\n\t- REVOLT_REDIS_URI=redis://redis/\n ports:\n\t- \"8000:8000\"\n\t- \"9000:9000\"\n restart: always\n\n # REVOLT Web App\n web:\n image: revoltchat/client:master\n env_file: .env\n ports:\n - \"5000:5000\"\n restart: always\n\n # S3-compatible storage server\n minio:\n image: minio/minio\n command: server /data\n env_file: .env\n volumes:\n - ./data/minio:/data\n ports:\n - \"10000:9000\"\n restart: always\n\n # Create buckets for minio.\n createbuckets:\n image: minio/mc\n depends_on:\n - minio\n env_file: .env\n entrypoint: >\n /bin/sh -c \"\n while ! curl -s --output /dev/null --connectmeout 1 http://minio:9000; do echo 'Waiting minio...' && sleep 0.1; done;\n /usr/bin/mc alias set minio http://minio:9000 $MINIO_ROOT_USER $MINIO_ROOT_PASSWORD;\n /usr/bin/mc mb minio/attachments;\n /usr/bin/mc mb minio/avatars;\n /usr/bin/mc mb minio/backgrounds;\n /usr/bin/mc mb minio/icons;\n /usr/bin/mc mb minio/banners;\n exit 0;\n \"\n # REVOLT file hosting service (Autumn)\n autumn:\n image: revoltchat/autumn\n env_file: .env\n depends_on:\n - database\n - createbuckets\n environment:\n - AUTUMN_MONGO_URI=mongodb://database\n ports:\n - \"3000:3000\"\n restart: always\n\n # REVOLT metadata and image proxy (January)\n january:\n image: revoltchat/january\n ports:\n - \"7000:3000\"\n restart: always\n"".

 

I think essentially what it's trying to say is that it doesn't like the lists in the yaml file denoted by hyphens. Any ideas?

 

Edit: Never mind I'm an idiot. FIgured it out. Copied the yaml into .env. :/. Remember always mash ctrl+c.

Edited by jimrummy101

  • Replies 872
  • Views 327.2k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • I've been playing with the code behind this plugin and have made a couple of tweaks.  I'd be interested on peoples thoughts and suggestions.   The first allows you to specify any .env file. 

  • I've recently started using Compose Manger to orchestrate my containers in Unraid. I've used docker-compose for a long time on old servers, but moved away from it when I started using Unraid, as I pre

  • In the recent update, orphaned image is now automatically removed. Thank you.   Is it possible to also update the local sha256 hash in this file /var/lib/docker/unraid-update-status.json? Si

Posted Images

Wrote a guide on installing Revoltchat with this plugin: https://github.com/dannymate/revolt-unraid-self-hosted. It's quite rushed but it's usable, first time using github wiki.

 

Also how would I add the compose up/down command to a docker folder?

Edited by jimrummy101

  • Author
17 hours ago, jimrummy101 said:

Also how would I add the compose up/down command to a docker folder?

Not sure at this point, I am not familiar with the usage of the Docker Folder plugin. If it requires integration with the gui components of this plugin then that will likely be a ways down the line. The compose.manager GUI is still in the very early stages of development.

6 hours ago, primeval_god said:

Not sure at this point, I am not familiar with the usage of the Docker Folder plugin. If it requires integration with the gui components of this plugin then that will likely be a ways down the line. The compose.manager GUI is still in the very early stages of development.

 

I figured it out. You can add bash commands to Docker Folders so they show up on the folder context menu in the Docker tab. Add/Edit Folder > Add Another Button

Config Type = Bash

Name = Compose Up / Compose Down

Icon = Pick Whatever

CMD =

Compose Up Command: "docker compose -f /boot/config/plugins/compose.manager/projects/<stackname>/compose.yml up"

Compose Down Command: "docker compose -f /boot/config/plugins/compose.manager/projects/<stackname>/compose.yml down"

The docker-compose function doesn't work so it needs the space in the middle.

 

Once you select the containers to be under that folder, even if they've been deleted they'll still show back up under that folder when recreated. If there's issues with that you can go into advanced view and set a regex. e.g. If I want all containers with the word revolt in the name I'd put "revolt" (without the quotations) in the regex field.

Hey everyone,

how can I set the directory of my persistent container data to be in the appdata folder on the array?

 

right now, the compose file is created on the boot usb device and all my paths in the compose file are relative to it.

However, I'd like to store the data in the same location as the "normal" docker implementation.

 

I found working_dir and context but received errors on trying it.

 

 

Btw. can I circumvent the error

"Configuration not found. Was this container created using this plugin?"

when updating the container from the gui?

 

Best regards

Edited by Kosmos
added 2nd question

  • Author
17 hours ago, Kosmos said:

Hey everyone,

how can I set the directory of my persistent container data to be in the appdata folder on the array?

You should just be able to use an absolute path in your volume configuration see here.

 

17 hours ago, Kosmos said:

Btw. can I circumvent the error

"Configuration not found. Was this container created using this plugin?"

when updating the container from the gui?

Dont try and update compose containers via the normal docker gui. At the moment there is no easy control for updating components of a compose stack.

  • 1 month later...

Can you add a "docker-compose pull" button ? That would make updating docker-compose images a breeze. 

  • Author
19 hours ago, aceofskies05 said:

Can you add a "docker-compose pull" button ? That would make updating docker-compose images a breeze. 

Yes thats already in the works.

  • 5 weeks later...

I'm confused as to what this plugin actually does?  So I have jitsi installed through docker compose (it uses 4 containers in 1 stack) and I downloaded this program, hoping to see information about my containers or the stack in the unraid webui but I dont see anything?  Just as shown below in the screenshot:

 

image.png

  • Author
5 hours ago, 007craft said:

I'm confused as to what this plugin actually does?

The primary purpose of this plugin is to provide a convenient way to install docker compose on unRAID. With this plugin installed docker compose is available through the command line. The ability to create and manage compose stacks via the web ui is still very much a work in progress.

5 hours ago, 007craft said:

So I have jitsi installed through docker compose (it uses 4 containers in 1 stack) and I downloaded this program, hoping to see information about my containers or the stack in the unraid webui but I dont see anything?

As it is stands the plugin gui will not display or manage arbitrary compose stacks running on unRAID, only those that are created with the plugin gui itself. Additionally the currently implemented features are mostly about control of the stack, there is not really anything displayed about the status of running stacks yet.

  • 3 weeks later...

Thanks for making this. While we wait for whatever Docker changes await in 6.10, this is fun to play with.

How about adding a Compose Logs button?

Also, the plugin allows you to rename a running stack, then can't control it - i.e., you hit Compose Down button and it says no container with the new name is running.

  • 2 weeks later...
  • Author
On 3/3/2022 at 12:07 PM, benfishbus said:

Also, the plugin allows you to rename a running stack, then can't control it - i.e., you hit Compose Down button and it says no container with the new name is running.

Fixed in the latest release.

 

On 3/3/2022 at 12:07 PM, benfishbus said:

How about adding a Compose Logs button?

Good idea i will look into it.

image.png.d385189702c12828ef1e93231408dc71.png

thanks for this useful plugin

any plan to implement an easy way to add logo imagine to container created by dock-compose?

Edited by VergilGao

5 minutes ago, VergilGao said:

image.png.d385189702c12828ef1e93231408dc71.png

thanks for this useful plugin

any plan to implement an easy way to add logo imagine to container created by dock-compose?

in 6.10, labels are supported, icon being one of those... you should be able to add it to the compose file to get the icon added.
Not tested this myself yet though.

  • Author
10 hours ago, VergilGao said:

any plan to implement an easy way to add logo imagine to container created by dock-compose?

Yes.

10 hours ago, tjb_altf4 said:

in 6.10, labels are supported, icon being one of those... you should be able to add it to the compose file to get the icon added.

The plan is eventually to add a helper to make adding the correct labels a one click.

1 hour ago, primeval_god said:

Yes.

The plan is eventually to add a helper to make adding the correct labels a one click.

 

thanks to your greate job!

  • Author

New update is out today. It adds a better editor for compose files and a button to get the logs for a compose stack. Note that the logs button only functions in "Experimental" mode which can be activated from the settings menu.

  • 2 weeks later...

primeval_god, is it possible to make setting where to store docker-compose.yml?

Edited by sersh

  • Author
On 4/1/2022 at 11:39 AM, sersh said:

primeval_god, is it possible to make setting where to store docker-compose.yml?

At this time I have no plans to support such a thing. Some of the core features of the plugin are currently based on the folder structure it creates in the plugin config directory on the flash drive. 

flash drive... not a very good solution...

2 hours ago, sersh said:

flash drive... not a very good solution...

I'm not against having options to store elsewhere, but nearly all config related to an unraid server is kept on the flash drive, including the native Unraid docker template solution.

It's hardly a bad solution, and is the most Unraidesque solution (as a default).

  • 4 weeks later...

At the moement when i restart the server i need to pull the image before i can compuse up. Is there a way that i dont need to pull every time i restart the server?

  • Author
2 hours ago, NasKaya said:

At the moement when i restart the server i need to pull the image before i can compuse up. Is there a way that i dont need to pull every time i restart the server?

Interesting, this should not be the case. Using compose pulls images into the local docker repo just like using docker directly. When restarting your system the image should exist locally and compose up should work just fine. What does your compose file look like?

Great project! I am wondering if there is a way to add a webui button to the dropdown when you click on an apps button? currently i just got to <ip>:<port>

  • Author
On 5/7/2022 at 10:42 AM, oldcrazyeye said:

Great project! I am wondering if there is a way to add a webui button to the dropdown when you click on an apps button? currently i just got to <ip>:<port>

Support for specifying WebUI and Icons via docker labels is coming i believe in unRAID 6.10. Likewise i plan on adding some functionality to this plugin to support automatically inserting the necessary labels into compose files.

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.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.