[SUPPORT] OpenEats - CorneliousJD Repo


Recommended Posts

About

OpenEats is a recipe management site that allows users to create, share, and store their personal collection of recipes.

The usage for the app is intended for a single user or a small friends/family group. 
Demo: https://open-eats.github.io/

GitHub: https://github.com/open-eats/OpenEats

 

In my hunt for a self-hosted recipe manager on unRAID, I found a lot of interest in people wanting an OpenEats container, but due to the offical OpenEats containers being split into 3 different containers (nginx, web, and API) it didn't seem like anyone had it successfully running. I took the liberty of trying to get this done for everyone in the community!

I found a request for this type of setup (single dockerfile) on GitHub and decided to start diving in to see if I could get this running on unRAID through a reverse proxy, and here we are!

I based my template for this container off of this GitHub repo and this Docker Hub repo

 

Requirements

MariaDB (I recommend LinuxServer's container) or compatible MySQL server.

 

Note that there IS a version of this container that comes with MariaDB baked in but it is NOT currently functioning.

It is the :mariadb tab, but currently attempting to run it will get you a command failure due to +x permission error.

I've reached out to the devs to fix this hopefully!

I would recommend the separate MariaDB container anyways, regardsless!

 

Setup

MariaDB: You simply need to setup a MariaDB database. I would suggest just calling it "openeats" and you can attach permissions for a user to that database. You should be able to use Adminer (there's a CA docker container already!) if you need a GUI-based way to add databases/users/permissions, etc. 

Once you have your database, user, and password setup, just put it into the corresponding spots on this docker container's template.

Alternatively, you CAN use the SQL root user/password, but I do not recommend that, it's better to have a user with permissions only on this single database.

 

First Run: Please wait while the container creats all the necessary tables in the SQL database.
This can take 5-10 minutes or so and the container will have NO log output when it does this.
Please be patient, if you interrupt this by stopping the container it will leave you with a broken database!

You'll know it's done either when the site is fully working or when you start seeing log output for the container.

 

Users & Groups: After you get everything running, you can login with your sueruser account and you can even create other users who will have access to the site. 

I would suggest going in and create a group and granting the permissions you want them to have, and then adding users to those groups if you plan on having more than just yourself access this OpenEats instance.

 

Variables

OPENEATS_VERSION: This will let you choose a specific version, you can choose "master" here to get the latest version direct from github on each run/restart of the container, or you can choose a speciric version from here as well. If you want to run a specific version just enter the version number for example 1.5.0

 

ALLOWED_HOST: This will default to * (all), however to be more restrictive you can list your IP address of your unRAID server (allows local LAN access), along with any reverse-proxy domain you want to access from (for access over the Internet), e.g. it may look like this: 192.168.1.10, openats.yourdomain.com

 

DJANGO_SECRET_KEY: This needs to be a long randomly genrated string for cryptography. See here for more information.

 

Other Variables: A list of other OpenEats variables is available here

 

Reverse Proxy

This should work just fine in either an Nginx reverse proxy (like LinuxServer's Let's Encrypt container, or Nginx Proxy Manager).

I would recommend setting this us as a subdomain, such as https://openeats.yourdomain.com 

My current Let's Encrypt reverse proxy server block looks like this.

#OPENEATS
server {
	listen 80;
	server_name openeats.yourdomain.com;
	return 301 https://openeats.yourdomain.com$request_uri;
	}
server {
	listen 443 ssl http2;
	server_name openeats.yourdomain.com;
	location / {
		include /config/nginx/proxy.conf;
		proxy_pass http://192.168.1.10:8760/;
		} 
	}

 

Known Issues

When running behind a reverse proxy, I cannot seem to get the admin page to load.

A workaround for now would be to just access it locally to make changes you need, since there shouldn't be too much you regularly have to do there, I don't see this as being a huge issues, but I will try to figure out why this is and work towards a fix. I didn't see this as a reason to delay release of this template/container because it works fine locally still.

 

When creating a recipe it will show a broken image as the placeholder until you upload your own.

Saving it without uploading one will still auto-generate a placeholder one after saving. Cosmetic-only issue.

 

Creating a recipe link does not seem to currently work, it just gets stuck at saving the recipe and nonthing ever happens. 

Thank you /u/ziggie216 on Reddit for reporting this.

Edited by CorneliousJD
Added demo URL
  • Like 1
Link to comment
2 minutes ago, JasonK said:

does it have a way to import a recipe, say, mealmaster recipes?  or scrape a url passed to it?"

Nevermind.  Reading through the issues list on github, the app author explicitly stated that he wouldn't add support for importing recipes.  Thanks for the work tho!

Link to comment
5 hours ago, JasonK said:

Nevermind.  Reading through the issues list on github, the app author explicitly stated that he wouldn't add support for importing recipes.  Thanks for the work tho!

Yeah unfortunately that wont be in the cards, and I know entering recipes can take a while to move over, lots of copy/paste or typing everything in again.

 

 

Link to comment

Just installed this and I can't seem to log into it or browse anything without a spinning circle (I haven't added any recipies yet, but when I do hit browse it just spins).  When I go to login and put in a username/password it just sits there.  I'm using the username/password that I put in the docker image during install, also tried random usernames/passwords to see if it would at least give me a bad username/password error and it did not, it just sits there, almost as if the sign in button isn't registering.

 

It's been running for at least 30 minutes so far, so I'd assume it's finished doing everything in the background.  

 

I also noticed that the openeats appdata folder seems to be empty, I'm not sure if that's normal or not.  

 

Any help would be appreciated, and thanks for this docker!
 

edit: removed logs for easier scrolling!

 

Edited by kelmino
Link to comment
2 hours ago, kelmino said:

Just installed this and I can't seem to log into it or browse anything without a spinning circle (I haven't added any recipies yet, but when I do hit browse it just spins).  When I go to login and put in a username/password it just sits there.  I'm using the username/password that I put in the docker image during install, also tried random usernames/passwords to see if it would at least give me a bad username/password error and it did not, it just sits there, almost as if the sign in button isn't registering.

 

It's been running for at least 30 minutes so far, so I'd assume it's finished doing everything in the background.  

 

I also noticed that the openeats appdata folder seems to be empty, I'm not sure if that's normal or not.  

 

Any help would be appreciated, and thanks for this docker!

Make sure your allowed_host is set to * because that sounds like it's now allowing your host through, once you get it working that way you can mess with it a little more and change your allowed_host to be something else.

 

It's normal for everything else you mentioned, the spinning on browse, and the lack of any error with the lack of login happening for it to be an allowed host issue.

 

Also appdata remains empty until you start uploading photos for recipies, so that's normal for now!

 

PS, if you load up Adminer or another SQL server manager (or just look via command line) you should see these tables in your openeats database, if you don't see them all then something went wrong with the database.

 

image.png.0d23f701beb8047dc9fcce6e8ededdb1.png

Link to comment
21 minutes ago, kelmino said:

Yeah, myallowed host is set to * in the config

 

mariadb looks empty when I run showtables, so I'm guessing that's it.  I'll remake that database and try again.

 

 

Interesting. Yeah it just be something with that. Try blowing out the whole open eats container too when you make the DB over again. Make sure you assign a user with all rights on that db (or use root user and pass)

  • Like 1
Link to comment
1 hour ago, CorneliousJD said:

Interesting. Yeah it just be something with that. Try blowing out the whole open eats container too when you make the DB over again. Make sure you assign a user with all rights on that db (or use root user and pass)

Yeah that was it.  I initially tried just blowing out my mariadb container and that didn't seem to do the job, but once I wiped out both containers and deleted their appdata folders everything is now good to go.  Thanks a bunch for your help!

Link to comment
3 hours ago, paradigm Shift said:

Anyone else experiencing issues with saving ratings/comments on recipes? I suspect it is related to accessing the admin page on a remote connection as recipe ratings are saving if I access the page directly on my local network. 

I haven't been able to save them either via domain.  Haven't tried using the local ip though. 

Link to comment

Adding a comment with the rating worked for me.  Thanks!

 

Have you had any luck when using the Recipe Links?  I am able to add the link, but when I save the recipe it seems to freeze on "Saving recipe. Please wait..." and never actually adds the link.

Link to comment
12 minutes ago, bauerus said:

Adding a comment with the rating worked for me.  Thanks!

 

Have you had any luck when using the Recipe Links?  I am able to add the link, but when I save the recipe it seems to freeze on "Saving recipe. Please wait..." and never actually adds the link.

Same here. It's actually on the known issues in the first post. I'm not sure why as I haven't been able to gather any reason why. I haven't been able to test yet but you may be able to force version 1.5.1 or 1.4.0 and try with that? If you do and it works let me know!

Link to comment
3 hours ago, bauerus said:

I haven't been able to save them either via domain.  Haven't tried using the local ip though. 

Finally figured out the issue on my end. I needed to designate the users as "Staff" from the admin panel. Once I did this, the comment/rating system is working from domain and locally. 

Edited by paradigm Shift
typo
Link to comment
44 minutes ago, paradigm Shift said:

Finally figured out the issue on my end. I needed to designate the users as "Staff" from the admin panel. Once I did this, the comment/rating system is working from domain and locally. 

I think you might be right.  When I tried earlier it was with an elevated account.  Trying again with a basic user account I couldn't set rating or comment. Tried with a group permission and user permission.

Link to comment
6 minutes ago, BrambleGB said:

Sorry, I mean the one where you can't access the admin page over the reverse proxy.

Ah gottcha, that I do not know off hand, I would assume it does have something to do with the reverse proxy setup, but I'm not able to figure out what's missing there or what else I could do to make it work. Since the admin page is likely to be accessed so infrequently once you have users/groups setup I didn't think it was a huge deal, and I didn't have the time to sit and try and figure that one out unfortunately :(

Link to comment

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...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.