SamTV12345 / PodFetch

A sleek and efficient podcast downloader.
https://samtv12345.github.io/PodFetch
Apache License 2.0
347 stars 25 forks source link

Can't download podcast (you are not an admin or uploader) #474

Closed jveronese closed 10 months ago

jveronese commented 10 months ago

I have a fresh Ubuntu 22.04 installed on a VM and installed Podfetch via Portainer with the Postgres file here on Github. I then mounted an SMB share and linked my _data to that share via symlink (i'm guessing my issue, but I can't get my SMB share to mount as a Volume in portainer. just get error 500 after setting up an SMB volume and setting it to this container). I then enabled basic authentication and made myself a user with admin rights. After signing in to PodFetch when I try to add a podcast I get an error that "You are not an admin or uploader" though that is the role that shows up in the cli. Any thoughts? Even if I can get pointed in the right direction to mount the SMB shares correctly I would appreciate it.

This might be a dumb question, so I'll apologize in advance. This is my first foray into docker and portainer, so i'm fumbling around in the dark trying to learn as I go.

SamTV12345 commented 10 months ago

This is likely because the PodFetch container user does not have the correct permissions. You need to set the user and group id to the user that also starts the container. This is most likely the id 0

jveronese commented 10 months ago

So I think finally got the volume mapped correctly after a quick walk away from the desk, and chaning uid/gid to 0 in the yaml file lets me add Podcasts. However, I can't hit the "download to server" button, it only lets me download locally to my computer.

Maybe I have this setup wrong still, but I don't know where

`version: '3'
services:
  podfetch:
    image: samuel19982/podfetch:latest
    user: ${UID:-0}:${GID:-0}
    ports:
      - "2080:8000"
    depends_on:
      - postgres
    volumes:
      - /var/lib/docker/volumes/SMBShare/_data:/app/podcasts
    environment:
      - POLLING_INTERVAL=300
      - SERVER_URL=http://localhost:80 # Adjust to your server url
      - DATABASE_URL=postgresql://postgres:changeme@postgres/podfetch
      - DB_CONNECTIONS=10 # optional
  postgres:
    image: postgres
    environment:
      POSTGRES_USER: ${POSTGRES_USER:-postgres}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-changeme}
      PGDATA: /data/postgres
      POSTGRES_DB: ${POSTGRES_DB:-podfetch}
    volumes:
      - postgres:/data/postgres
    restart: unless-stopped

volumes:
  postgres:`
SamTV12345 commented 10 months ago

My best guess is that: Is the frontend url correctly configured? Are you accessing PodFetch via localhost in your browser?

jveronese commented 10 months ago

That would be something I forgot to set again when I re-installed portainer.

Hopefully last question, and it's really more of a Portainer question, so maybe it would better asked there. However, I have my CIFS share mounted under volumes, but Podcasts are saving to a local version, not the NAS share. What is the correct way to map this with Docker containers? I've attached my Volume setup for reference, maybe it's something stupid simple. SCR-20231204-nvtt

Or is my dumb idea of setting a symlink feasible?

jveronese commented 10 months ago

I figured it out. If I mount it on the host and bind it in my volumes, it works.

The only other things are

1) I cant figure out is how to name these correctly. They are going into named folders, but they're all named podcast.mp3. I think this is why Audiobookshelf is picking them all up as separate things instead of podcasts of the same series. Is there a list of how to use the naming conventions to address this by chance?

2) I can't seem to do anything besides add podcasts once I put PodFetch behind my reverse proxy (caddy). Updated the ENV for the URL to podcasts.mydomain.com and enabled BAISC_AUTH. Can log in and add series (which then download) but can't delete episodes or unsubscribe.

SamTV12345 commented 10 months ago

I figured it out. If I mount it on the host and bind it in my volumes, it works.

The only other things are

  1. I cant figure out is how to name these correctly. They are going into named folders, but they're all named podcast.mp3. I think this is why Audiobookshelf is picking them all up as separate things instead of podcasts of the same series. Is there a list of how to use the naming conventions to address this by chance?
  2. I can't seem to do anything besides add podcasts once I put PodFetch behind my reverse proxy (caddy). Updated the ENV for the URL to podcasts.mydomain.com and enabled BAISC_AUTH. Can log in and add series (which then download) but can't delete episodes or unsubscribe.
  1. There is an option in the settings menu called direct paths. This maps all episodes of a podcast into the root directory. That way audiobookshelf will detect it as one podcast.
  2. That sounds like a misconfiguration. Did you change the frontend url correctly and also added https://?
jveronese commented 10 months ago

1) Direct Paths fixed it 2) Apparently I was just impatient, looks like it's working fine now.

Thank you so much for all the help with this. Everything seems to be working great now. You're a life saver!

SamTV12345 commented 10 months ago

You're welcome :). Have fun with PodFetch.