├── .dockerignore ├── root └── etc │ ├── services.d │ ├── mongo │ │ └── run │ └── plexrequests │ │ └── run │ └── cont-init.d │ ├── 30-config │ └── 90-config ├── .gitattributes ├── .gitignore ├── .github ├── PULL_REQUEST_TEMPLATE.md └── ISSUE_TEMPLATE.md ├── Dockerfile └── README.md /.dockerignore: -------------------------------------------------------------------------------- 1 | .git 2 | .gitignore 3 | .github 4 | .gitattributes 5 | READMETEMPLATE.md 6 | README.md 7 | -------------------------------------------------------------------------------- /root/etc/services.d/mongo/run: -------------------------------------------------------------------------------- 1 | #!/usr/bin/with-contenv bash 2 | s6-setuidgid abc /usr/bin/mongod --dbpath /config/db 3 | -------------------------------------------------------------------------------- /root/etc/cont-init.d/30-config: -------------------------------------------------------------------------------- 1 | #!/usr/bin/with-contenv bash 2 | 3 | mkdir -p /config/db 4 | chown -R abc.abc /config /app 5 | 6 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /root/etc/services.d/plexrequests/run: -------------------------------------------------------------------------------- 1 | #!/usr/bin/with-contenv bash 2 | 3 | cd /app/bundle || exit 4 | 5 | # Set a delay to wait to start meteor container 6 | if [[ -n $DELAY ]]; then 7 | echo "Delaying startup for $DELAY seconds" 8 | sleep "$DELAY" 9 | fi 10 | 11 | 12 | # determine if a url base is set for reverse proxy 13 | HOME_URL=http://127.0.0.1 14 | if [ -z "$URL_BASE" ] || [ "$URL_BASE" == "0" ]; then 15 | HOME_URL="$HOME_URL" 16 | else 17 | HOME_URL="$HOME_URL""$URL_BASE" 18 | fi 19 | 20 | 21 | export PORT=${PORT:-3000} MONGO_URL=mongodb://127.0.0.1:27017 ROOT_URL="$HOME_URL" 22 | echo "=> Starting meteor app on port:$PORT" 23 | exec s6-setuidgid abc node main.js 24 | 25 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Windows image file caches 2 | Thumbs.db 3 | ehthumbs.db 4 | 5 | # Folder config file 6 | Desktop.ini 7 | 8 | # Recycle Bin used on file shares 9 | $RECYCLE.BIN/ 10 | 11 | # Windows Installer files 12 | *.cab 13 | *.msi 14 | *.msm 15 | *.msp 16 | 17 | # Windows shortcuts 18 | *.lnk 19 | 20 | # ========================= 21 | # Operating System Files 22 | # ========================= 23 | 24 | # OSX 25 | # ========================= 26 | 27 | .DS_Store 28 | .AppleDouble 29 | .LSOverride 30 | 31 | # Thumbnails 32 | ._* 33 | 34 | # Files that might appear on external disk 35 | .Spotlight-V100 36 | .Trashes 37 | 38 | # Directories potentially created on remote AFP share 39 | .AppleDB 40 | .AppleDesktop 41 | Network Trash Folder 42 | Temporary Items 43 | .apdisk 44 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [linuxserverurl]: https://linuxserver.io 4 | [![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl] 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | ## Thanks, team linuxserver.io 15 | 16 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [linuxserverurl]: https://linuxserver.io 4 | [![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl] 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | ## Thanks, team linuxserver.io 21 | 22 | -------------------------------------------------------------------------------- /root/etc/cont-init.d/90-config: -------------------------------------------------------------------------------- 1 | #!/usr/bin/with-contenv bash 2 | 3 | echo ' 4 | ****************************************************** 5 | ****************************************************** 6 | * * 7 | * * 8 | * This image has been deprecated * 9 | * * 10 | * For users looking for a replacement * 11 | * We reccomend Ombi * 12 | * * 13 | * linuxserver/ombi * 14 | * * 15 | * https://hub.docker.com/r/linuxserver/ombi * 16 | * * 17 | * https://github.com/linuxserver/docker-ombi * 18 | * * 19 | * * 20 | * * 21 | ****************************************************** 22 | ******************************************************' 23 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM lsiobase/ubuntu:xenial 2 | 3 | # set version label 4 | ARG BUILD_DATE 5 | ARG VERSION 6 | LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}" 7 | LABEL maintainer="zaggash ,sparklyballs" 8 | 9 | # package versions 10 | ARG MONGO_VERSION="3.2.9" 11 | 12 | # environment settings 13 | ARG DEBIAN_FRONTEND="noninteractive" 14 | ARG COPIED_APP_PATH="/tmp/git-app" 15 | ARG BUNDLE_DIR="/tmp/bundle-dir" 16 | 17 | RUN \ 18 | echo "**** install packages ****" && \ 19 | apt-get update && \ 20 | apt-get install -y \ 21 | curl && \ 22 | echo "***** install nodejs ****" && \ 23 | curl -sL \ 24 | https://deb.nodesource.com/setup_0.10 | bash - && \ 25 | apt-get install -y \ 26 | --no-install-recommends \ 27 | nodejs=0.10.48-1nodesource1~xenial1 && \ 28 | echo "**** install mongo ****" && \ 29 | curl -o \ 30 | /tmp/mongo.tgz -L \ 31 | https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-$MONGO_VERSION.tgz && \ 32 | mkdir -p \ 33 | /tmp/mongo_app && \ 34 | tar xf \ 35 | /tmp/mongo.tgz -C \ 36 | /tmp/mongo_app --strip-components=1 && \ 37 | mv /tmp/mongo_app/bin/mongod /usr/bin/ && \ 38 | echo "**** install plexrequests ****" && \ 39 | plexreq_tag=$(curl -sX GET "https://api.github.com/repos/lokenx/plexrequests-meteor/releases/latest" \ 40 | | awk '/tag_name/{print $4;exit}' FS='[""]') && \ 41 | curl -o \ 42 | /tmp/source.tar.gz -L \ 43 | "https://github.com/lokenx/plexrequests-meteor/archive/${plexreq_tag}.tar.gz" && \ 44 | mkdir -p \ 45 | $COPIED_APP_PATH && \ 46 | tar xf \ 47 | /tmp/source.tar.gz -C \ 48 | $COPIED_APP_PATH --strip-components=1 && \ 49 | cd $COPIED_APP_PATH && \ 50 | HOME=/tmp \ 51 | export METEOR_NO_RELEASE_CHECK=true && \ 52 | curl -sL \ 53 | https://install.meteor.com/?release=1.4.1.3 | \ 54 | sed s/--progress-bar/-sL/g | /bin/sh && \ 55 | HOME=/tmp \ 56 | meteor build \ 57 | --directory $BUNDLE_DIR \ 58 | --server=http://localhost:3000 && \ 59 | cd $BUNDLE_DIR/bundle/programs/server/ && \ 60 | npm i && \ 61 | mv $BUNDLE_DIR/bundle /app && \ 62 | echo "**** cleanup ****" && \ 63 | npm cache clear > /dev/null 2>&1 && \ 64 | apt-get clean && \ 65 | rm -rf \ 66 | /tmp/* \ 67 | /tmp/.??* \ 68 | /usr/local/bin/meteor \ 69 | /usr/share/doc \ 70 | /usr/share/doc-base \ 71 | /root/.meteor \ 72 | /var/lib/apt/lists/* \ 73 | /var/tmp/* 74 | 75 | # add local files 76 | COPY root/ / 77 | 78 | # ports and volumes 79 | EXPOSE 3000 80 | VOLUME /config 81 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [linuxserverurl]: https://linuxserver.io 2 | [forumurl]: https://forum.linuxserver.io 3 | [ircurl]: https://www.linuxserver.io/irc/ 4 | [podcasturl]: https://www.linuxserver.io/podcast/ 5 | [appurl]: http://plexrequests.8bits.ca/ 6 | [hub]: https://hub.docker.com/r/linuxserver/plexrequests/ 7 | 8 | THIS IMAGE IS DEPRECATED. For users that want to have a current Plex request server we highly reccomend `linuxserver/ombi` . 9 | 10 | [![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl] 11 | 12 | The [LinuxServer.io][linuxserverurl] team brings you another container release featuring easy user mapping and community support. Find us for support at: 13 | * [forum.linuxserver.io][forumurl] 14 | * [IRC][ircurl] on freenode at `#linuxserver.io` 15 | * [Podcast][podcasturl] covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation! 16 | 17 | # linuxserver/plexrequests 18 | [![](https://images.microbadger.com/badges/version/linuxserver/plexrequests.svg)](https://microbadger.com/images/linuxserver/plexrequests "Get your own version badge on microbadger.com")[![](https://images.microbadger.com/badges/image/linuxserver/plexrequests.svg)](https://microbadger.com/images/linuxserver/plexrequests "Get your own image badge on microbadger.com")[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/plexrequests.svg)][hub][![Docker Stars](https://img.shields.io/docker/stars/linuxserver/plexrequests.svg)][hub][![Build Status](https://ci.linuxserver.io/buildStatus/icon?job=Docker-Builders/x86-64/x86-64-plexrequests)](https://ci.linuxserver.io/job/Docker-Builders/job/x86-64/job/x86-64-plexrequests/) 19 | 20 | [Plexrequests][appurl], a simple automated way for users to request new content for Plex Users can search for content to request. Integrates with couchpotato, sonarr and sickrage etc... 21 | 22 | [![plexrequests](https://raw.githubusercontent.com/linuxserver/beta-templates/master/lsiodev/img/plexrequests-banner.png)][appurl] 23 | 24 | ## Usage 25 | 26 | ``` 27 | docker create \ 28 | --name=plexrequests \ 29 | -v /etc/localtime:/etc/localtime:ro \ 30 | -v :/config \ 31 | -e PGID= -e PUID= \ 32 | -e URL_BASE= \ 33 | -p 3000:3000 \ 34 | linuxserver/plexrequests 35 | ``` 36 | 37 | ## Parameters 38 | 39 | `The parameters are split into two halves, separated by a colon, the left hand side representing the host and the right the container side. 40 | For example with a port -p external:internal - what this shows is the port mapping from internal to external of the container. 41 | So -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080 42 | http://192.168.x.x:8080 would show you what's running INSIDE the container on port 80.` 43 | 44 | 45 | * `-p 3000` - the port(s) 46 | * `-v /etc/localtime` for timesync - *optional* 47 | * `-v /config` - where plexrequests should store its config files 48 | * `-e PGID` for GroupID - see below for explanation 49 | * `-e PUID` for UserID - see below for explanation 50 | * `-e URL_BASE` - used for reverse proxy, see below for explanation 51 | 52 | It is based on ubuntu xenial with s6 overlay, for shell access whilst the container is running do `docker exec -it plexrequests /bin/bash`. 53 | 54 | ### User / Group Identifiers 55 | 56 | Sometimes when using data volumes (`-v` flags) permissions issues can arise between the host OS and the container. We avoid this issue by allowing you to specify the user `PUID` and group `PGID`. Ensure the data volume directory on the host is owned by the same user you specify and it will "just work" ™. 57 | 58 | In this instance `PUID=1001` and `PGID=1001`. To find yours use `id user` as below: 59 | 60 | ``` 61 | $ id 62 | uid=1001(dockeruser) gid=1001(dockergroup) groups=1001(dockergroup) 63 | ``` 64 | 65 | ## Setting up the application 66 | 67 | Webui is at `:3000`, sign in with your plex username. More info from the plexrequest website [FAQ](http://plexrequests.8bits.ca/faq/). 68 | 69 | If you need to use a reverse proxy for plexrequest, set `URL_BASE` to `/`. The `/` before the name is important. 70 | 71 | ## Info 72 | 73 | * To monitor the logs of the container in realtime `docker logs -f plexrequests`. 74 | * Shell access whilst the container is running: `docker exec -it plexrequests /bin/bash` 75 | 76 | * container version number 77 | 78 | `docker inspect -f '{{ index .Config.Labels "build_version" }}' plexrequests` 79 | 80 | * image version number 81 | 82 | `docker inspect -f '{{ index .Config.Labels "build_version" }}' linuxserver/plexrequests` 83 | 84 | ## Versions 85 | 86 | + **05.01.19:** Linting fixes. 87 | + **14.12.17:** Fix continuation lines. 88 | + **14.10.16:** Add version layer information. 89 | + **18.09.16:** Use specific mongo version for xenial. 90 | + **12.09.16:** Rebase to ubuntu xenial, move to linuxserver repository 91 | + **27.02.16:** Bump to latest release 92 | + **05.02.16:** Initial Release. 93 | --------------------------------------------------------------------------------