e1ioan / rokuphp

32 stars 9 forks source link

Running on a server instead of a Pi #6

Open jwinfree opened 6 years ago

jwinfree commented 6 years ago

I've been reading through the instructions and it seems like this functionality could also be achieved without the pi if you already had a spare computer or server running in your house. Ideally I would love to run this locally all within Windows 10 but it might be easier to setup a linux vm or docker container and run it from there.

Any thoughts or guidance on this?

jwinfree commented 5 years ago

So I've made some progress on this and have put together a working Docker container with the necessary components but I keep running into various runtime errors and errors with the application in general. Once I have a full working setup of this then I would love to share it back with everyone. My long term plan is to have this docker container running on a NAS device (capable of transcoding) so that I don't have to purchase an unnecessary Pi just to run this.

I decided to try and run the php app locally using IntelliJ and have been able to make some modifications here and there to get the cameras to save and allow me to create an account and login but I'm still running into a lot more errors than I was expecting. Maybe the pi environment is more tolerant of errors?

I'm currently using PHP 5.6 (because 7+ seemed to throw errors due to RPCL's use of Object). I believe a majority of the errors are related to the RPCL library itself and also it's implementation of jquery mobile. PHP is far from my first language so i've been slowly working through it.

What environment/IDE do you use when building and testing this application? Any help is appreciated.

e1ioan commented 5 years ago

Hi Josh, On the Pi I made it work with both PHP5 and PHP7. I don't know what the differences are in how PHP works on other platforms... PHP is not my main language either, I learn it just for this project.

I used HTML5 Builder from Embarcadero (I'm pretty sure they have a free 30 days trial)

brossow commented 5 years ago

Any progress on a Docker container? Would like to run this on my Synology. I have Pi-hole on my 3B+ and it's already using port 80, so unless there's a way to change the default port, I need to run it elsewhere. (Docker would be much more convenient anyway.)

stmty9 commented 4 years ago

@brossow https://timleland.com/how-to-change-apache-port/ I am running pihole on mine too. I haven't tried the full setup, but i changed port and was able to start apache2 right up. @e1ioan am assuming we can use http://ip:port on ip camera pro to designate the server?

e1ioan commented 4 years ago

@brossow am assuming we can use http://ip:port on ip camera pro to designate the server?

You can use ip:port without http://

JulioAviles commented 4 years ago

Hi, @e1ioan I need it working on a local PC, any progress with any other option instead of the Pi? regards (just no wanna have another device working on)

e1ioan commented 4 years ago

@JulioAviles I never tried to make it work on anything other than raspberry pi and orange pi. Considering that it runs on Linux, you probably can install it on any device with Linux and probably with a little work, on a Windows machine.

Yabbo commented 3 years ago

@jwinfree @brossow https://hub.docker.com/repository/docker/yabbo/rokuphp

here is my docker image... bind port 80 on the container to an external port (nodeport or loadbalancer port) and bam it works...

you can also download and run the install.sh file on an ubuntu server /desktop and have it running as well.

@JulioAviles I also forked this repo and provide instructions on running this on ubuntu (virtual or physical) along with docker, kubernetes, and the original Raspberry pi instructions

https://github.com/Yabbo/rokuphp

e1ioan commented 3 years ago

@Yabbo nice work!

wbuck3 commented 2 years ago

For proxmox users, I've successfully used a ubuntu 20.04 container with 384mb (may be able to use as little as 256mb) of RAM. The only issue I saw was net-tools is not installed by default on container so you don't get the correct message with URL to point your browser/roku to.