mrseedbox
mrseedbox copied to clipboard
[unmaintained] A Containerized Seedbox with Embedded Media Player
Disclaimer: Neither this project nor its owner will take any responsibility for any illegal use.
Mr Seedbox
I use this repo to test weird coding habits on a larger scale, don't expect the code to be pretty
New Screenshots
Install process (Still wip, sorry!):
- Be running Linux
- Install Git
- Install docker
- Install docker-compose
- Create a Google API Project
- Add the Google+ API library
- Generate some Credentials for Oauth2
- Application Type:
- Web Application
- Authorized origins:
https://localhostorhttps://yourdomain.com
- Authorized redirect URIs:
https://localhost/oauth2callbackorhttps://yourdomain.com/oauth2callback
- Application Type:
git clone https://github.com/Meshiest/mrseedbox.gitcd mrseedboxcp common.env.default common.envcp docker-compose.yml.default docker-compose.ymlORcp letsencrypt-docker-compose.yml docker-compose.ymlfor letsencrypt- Edit your docker-compose.yml and common.env files (put google api client and secret in)
- Make sure you change EXAMPLE.COM if you're using the letsencrypt dockerfile
- Generate a SSL Cert:
./setup- If you are using LetsEncrypt, you can use
certbot certonly --standalone - If you are using LetsEncrypt, make sure you generate a dhparam:
sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
- If you are using LetsEncrypt, you can use
- The first person to connect and auth will be the "owner"
- You will have to go through the initial emby setup at
localhost:8096! - If you are migrating from the old versions, you may have to
docker build backendbefore starting the containers. If that doesn't work, you should remove all containers and images associated with this app and./startit again - Don't forget to add this to your MyAnimeList Custom CSS for the best experience:
@import url(https://gist.githubusercontent.com/Meshiest/cf3a3a4e16f5669ce7540445bf5b4cbf/raw/style.css)
If you do use the above LetsEncrypt instructions, you should get some nice A+ SSL like this:

Commands (from shell):
./start- start, build, and update containers. If you need to update emby, you can run thisdocker-compose up -d- same as above./stop- should stop containersdocker-compose kill ; docker-compose rm -f- same as above./db- should open db container for debugging./server- should restart sinatra server container (by force >:) )docker-compose restart mrseedbox_backend_1- should be a nicer way of doing abovedocker logs -f mrseedbox_backend_1- read logs from sinatra serverdocker ps- list containersdocker exec -it mrseedbox_backend_1 bash- get a shell in the backend container- You should know that creating a
debugfile in the backend folder will prevent authentication
Contributing
Things You Need
- You need docker
- NPM/node
Updating the Backend (./backend)
- Make your changes
docker build ../startfrom the parent directory anddocker logs -f mrseedbox_backend_1and check if there were any problems starting the container
Updating the frontend (./backend/public/js)
- Change app.jsx
npm install --only=devin backend/public/jsnpm test