I would love to be able to spin up a container for this cocktail recipe thing I found on Docker Hub.

https://hub.docker.com/r/gthole/drink-stash

I am running a Synology DSM 7.2, I have Portainer and have enough knowledge to set up basic things with lots of guides like plex/pihole. But since this is such a niche app my lack of knowledge is hurting.

Anyone have guidance for setting this up for someone with my tools and experience?

  • @CodeGameEat
    link
    English
    310 months ago

    Well, what issue do you have? You have a docker-compose snippet that you can add with portainer, from there what is not working?

    • @bloodsangre7OP
      link
      English
      210 months ago

      Well, I added in the docker-compose snippet in the “Running” section of the link to a new stack in Portainer, changing secret_key and allowed_hosts to localhost, pre-setup the volumes on Synology. The first error I get is “services.api.environment must be a mapping”

        • @bloodsangre7OP
          link
          English
          110 months ago

          Well, with “- SECRET_KEY=” I at least got a different error, a bind mount fail?

          • @CodeGameEat
            link
            English
            210 months ago

            I see what’s the problem this time, in your case you should probably use named volumes instead of bind-mount (which us what it is trying to do). I’m going to sleep now but if you can’t figure it out I can send an example tommorow.

            • @bloodsangre7OP
              link
              English
              110 months ago

              Not sure on the terms, but I did change the volume lines to direct to folders I pre-made in /volume1/drink-stash/data (same for public)

              • @CodeGameEat
                link
                English
                3
                edit-2
                10 months ago

                Try this:

                version: '3.7'
                
                services:
                    api:
                        image: 'gthole/drink-stash:latest'
                        init: true
                        restart: 'always'
                        environment:
                          - SECRET_KEY=YOUR_SECRET_KEY
                          - ALLOWED_HOSTS=SYNOLOGY_HOSTNAME_OR_IP
                        ports:
                          - 8081:8000
                        volumes:
                            - drink-stash-data:/data
                            - drink-stash-public:/public
                volumes:
                  drink-stash-data:
                  drink-stash-public:
                

                This will create volumes instead of mounting the folders. Mounting the folders (which is what you tried doing before) should be possible and nicer to use since you would be able to navigate the files directly, but since I do not know the filesystem and layout of synology it’s harder for me to help there. Using named volumes like I just sent you should work for any filesystem/layout so you shouldnt have any problem with that.

                Also, use the synology hostname and/or ip for the allowed_hosts, localhost would only work if you were running that on your computer. The app should then be available at http://SYNOLOGY_HOSTNAME_OR_IP:8081

                • @bloodsangre7OP
                  link
                  English
                  210 months ago

                  Well that did allow the Portainer to compile without error and deploy so I really appreciate the help! When navigating to the http://(my ip):8081 though I get a white page with “Bad Request (400)” on it

  • @bloodsangre7OP
    link
    English
    19 months ago

    For anyone trying to google a solution, I got it to work with the below in Portainer

    version: ‘3.7’

    services:

    api:
        image: 'gthole/drink-stash:latest'
        init: true
        restart: 'always'
        environment:
          - SECRET_KEY=*enter-a-key-here*
          - ALLOWED_HOSTS=*enter-ip-here*
          - DJANGO_SUPERUSER_USERNAME=*can-be-whatever*
          - DJANGO_SUPERUSER_EMAIL=*duh*
          - DJANGO_SUPERUSER_PASSWORD=*make-it-up*
          - DJANGO_SUPERUSER_FIRST_NAME=*John*
          - DJANGO_SUPERUSER_LAST_NAME=*Smith*
          - INITIAL_FIXTURES=recipes
        ports:
          - 8081:8000
        volumes:
            - /volume1/docker/drink-stash/data:/data
            - /volume1/docker/drink-stash/public:/public