wger-project / docker

Production...ish docker-compose image for wger

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Install via Portainer fails

alofgran opened this issue · comments

It's possible that this is not connected directly to wger, but I have not been able to get the app to install via portainer regardless of the method. I want to maintain the app via Portainer because 1) I'm not super familiar w/ Docker, and 2) I'd like to have the logs, etc. of all my services accessible from a single UI.

System info:

  • Portainer v. Community Edition 2.19.3
  • Running as docker container on a VM managed by Proxmox

Repository method (setup)
image

Repository method (result)
image

Web editor method (setup)

  • copy-paste docker-compose.yaml file from repo
  • change both mentions of port 8000 to 8001 (8000 is already used), e.g.
      - 8001
    healthcheck:
      test: wget --no-verbose --tries=1 --spider http://localhost:8001
  • change mention of port 80 to 81 (80 is already used), e.g.
ports:
     - "81:80"

Web editor method (result)
image

Other things I've tried:

  • changing all references to the .env file paths per this thread
  • removing the .env paths altogether
  • "aligning" (making the same on both sides of the :) volume paths (per the thread mentioned in bullet #1)
  • creating the missing file path (and prod.env file`) manually in the VM running Portainer
  • probably some other things that I'm forgetting at the moment :)

Spacing on docker-compose file examples isn't showing up correctly above, but in the file, I've confirmed that it is indeed correct.

hi! I also think this is some configuration problem, the application itself doesn't really care.

I'm not sure how portainer works or what options from the compose file it understands, but if it creates the wger network from it, you shouldn't need to change the 8000 port, as it is only used internally and isn't exposed to the host. I'll try to install portainer locally and see what happens

Thanks - I had tried installing without changing the ports as well and still received errors (though they may have been different; I’ll have to try again to double check the error when I’m back at the computer).

When simply copying & pasting the docker-compose.yaml contents from the repo to Portainer, I get

failed to deploy a stack: Failed to load /data/compose/96/config/prod.env: open /data/compose/96/config/prod.env: no such file or directory

The numbered directory (96, above) increments by one each time that I try to deploy with that compose file.

I suggest you do it via docker compose. Portainer‘s stack function has certain limitations and I ran into the same problem trying to get it running via portainer.
The even easier way is to log into your machine via a program like winscp, create a directory on your host machine via UI, copy all the files there and then it‘s literally only one command, namely you cd into the folder and do a ‚docker compose up -d‘. Done.
you can still see the logs in portainer and start/stop the containers via portainer, it‘s just you can‘t edit the container settings. Believe me, spending half an hour to learn running containers via linux console is absolutely worth it.

That’s helpful to know. Do you know what limitations the program is hitting in portainer? I haven’t had this issue with some of the other service I’ve deployed via portianer and so I really would like to deploy it so I can manage it entirely as a stack. The stacks, as a grouping of containers, are particularly convenient so that I know which containers apply to which services.

Sorry, I can‘t tell you. I just read that in a documentation to a much-used container that advised not to use portainer‘s stack function. It was a credible source, I hope. 😅
Anyways, the problems you are facing are already a hint that it‘s not the same as as a docker compose via the console.
What‘s the worth in of a GUI if you need 30 tries to get your containers running (or not at all) if instead you could just run them with 2 commands?;) And again, you‘ll still see them in portainer and have the assurance they work fine because of that nice green ‚healthy‘ sign. 😄