Merge pull request #3 from sparklyballs/alpine

rebase to alpine
This commit is contained in:
sparklyballs 2016-08-08 14:37:38 +01:00 committed by GitHub
commit 48e0371448
8 changed files with 47 additions and 51 deletions

29
Dockerfile Normal file → Executable file
View File

@ -1,26 +1,9 @@
FROM linuxserver/baseimage.python
FROM lsiobase/alpine.python
MAINTAINER sparklyballs
MAINTAINER Sparklyballs <sparklyballs@linuxserver.io>
# add local files
COPY root/ /
ENV APTLIST="libfreetype6-dev libjpeg8-dev libopenjpeg-dev libpng-dev libwebp-dev vnstat zlib1g-dev"
# install packages
RUN apt-get update -q && \
apt-get install \
$APTLIST -qy && \
# install pip packages
pip install -U pillow && \
pip install -U paramiko && \
pip install -U psutil && \
apt-get clean && rm -rf /tmp/* /var/lib/apt/lists/* /var/tmp/*
#Adding Custom files
ADD init/ /etc/my_init.d/
ADD services/ /etc/service/
RUN chmod -v +x /etc/service/*/run && chmod -v +x /etc/my_init.d/*.sh
# Volumes and Ports
VOLUME /config
# ports and volumes
EXPOSE 8085
VOLUME /config

View File

@ -1,6 +1,9 @@
![http://linuxserver.io](http://www.linuxserver.io/wp-content/uploads/2015/06/linuxserver_medium.png)
![https://linuxserver.io](https://www.linuxserver.io/wp-content/uploads/2015/06/linuxserver_medium.png)
The [LinuxServer.io](https://www.linuxserver.io/) team brings you another quality container release featuring auto-update on startup, easy user mapping and community support. Be sure to checkout our [forums](https://forum.linuxserver.io/index.php) or for real-time support our [IRC](https://www.linuxserver.io/index.php/irc/) on freenode at `#linuxserver.io`.
The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring easy user mapping and community support. Find us for support at:
* [forum.linuxserver.io](https://forum.linuxserver.io)
* [IRC](https://www.linuxserver.io/index.php/irc/) on freenode at `#linuxserver.io`
* [Podcast](https://www.linuxserver.io/index.php/category/podcast/) covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation!
# linuxserver/htpcmanager
@ -9,25 +12,35 @@ Htpcmanager, a front end for many htpc related applications. Hellowlol version.[
## Usage
```
docker create --name=htpcmanager -v /etc/localtime:/etc/localtime:ro -v <path to data>:/config -e PGID=<gid> -e PUID=<uid> -p 8085:8085 linuxserver/htpcmanager
docker create --name=htpcmanager \
-v <path to data>:/config \
-e PGID=<gid> -e PUID=<uid> \
-e TZ=<timezone> \
-p 8085:8085 \
linuxserver/htpcmanager
```
**Parameters**
* `-p 8085` - the port(s)
* `-v /etc/localtime` for timesync - *optional*
* `-v /config` - where htpcmanager should store its configuration files.
* `-e PGID` for GroupID - see below for explanation
* `-e PUID` for UserID - see below for explanation
* `-e TZ` for timezone information, eg Europe/London
It is based on alpine-linux with s6 overlay, for shell access whilst the container is running do `docker exec -it htpcmanager /bin/bash`.
It is based on phusion-baseimage with ssh removed, for shell access whilst the container is running do `docker exec -it htpcmanager /bin/bash`.
### User / Group Identifiers
**TL;DR** - The `PGID` and `PUID` values set the user / group you'd like your container to 'run as' to the host OS. This can be a user you've created or even root (not recommended).
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" ™.
Part of what makes our containers work so well is by allowing you to specify your own `PUID` and `PGID`. This avoids nasty permissions errors with relation to data volumes (`-v` flags). When an application is installed on the host OS it is normally added to the common group called users, Docker apps due to the nature of the technology can't be added to this group. So we added this feature to let you easily choose when running your containers.
In this instance `PUID=1001` and `PGID=1001`. To find yours use `id user` as below:
```
$ id <dockeruser>
uid=1001(dockeruser) gid=1001(dockergroup) groups=1001(dockergroup)
```
## Setting up the application
@ -35,15 +48,15 @@ The webui is found at port 8085.
Smartmontools has not been included, you can safely ignore the warning error in the log.
## Updates
## Info
* Upgrade to the latest version simply `docker restart htpcmanager`.
* To monitor the logs of the container in realtime `docker logs -f htpcmanager`.
## Versions
+ **14.01.2015:** Remove hardcoded loglevel from the run command, set in webui
+ **19.09.2015:** Initial Release.
+ **08.08.16:** Rebase to alpine linux.
+ **14.01.15:** Remove hardcoded loglevel from the run command, set in webui
+ **19.09.15:** Initial Release.

View File

@ -1,11 +0,0 @@
#!/bin/bash
[[ ! -d /app/htpcmanager/.git ]] && (git clone https://github.com/Hellowlol/HTPC-Manager.git /app/htpcmanager && \
chown -R abc:abc /app)
# opt out for autoupdates
[ "$ADVANCED_DISABLEUPDATES" ] && exit 0
cd /app/htpcmanager
git pull
chown -R abc:abc /app

View File

@ -0,0 +1,9 @@
#!/usr/bin/with-contenv bash
# install app
[[ ! -d /app/htpcmanager/.git ]] && \
git clone https://github.com/Hellowlol/HTPC-Manager.git /app/htpcmanager
# permissions
chown -R abc:abc \
/app

View File

@ -0,0 +1,4 @@
#!/usr/bin/with-contenv bash
exec \
s6-setuidgid abc python /app/htpcmanager/Htpc.py \
--datadir /config

4
root/etc/services.d/vnstat/run Executable file
View File

@ -0,0 +1,4 @@
#!/usr/bin/with-contenv bash
exec \
vnstatd -n

View File

@ -1,3 +0,0 @@
#!/bin/bash
/sbin/setuser abc python /app/htpcmanager/Htpc.py --datadir /config

View File

@ -1,3 +0,0 @@
#!/bin/bash
vnstatd -n