mirror of
https://github.com/anthonyaxenov/iptv.git
synced 2024-12-22 06:15:48 +00:00
Скрипт ./iptv
This commit is contained in:
parent
7b913b5099
commit
950dfdb1b9
20
README.md
20
README.md
@ -49,6 +49,7 @@ I'm too lazy to translate and support the whole project in ru and en, sorry, guy
|
||||
---
|
||||
|
||||
<a id="howtouse"></a>
|
||||
|
||||
## Как использовать этот список?
|
||||
|
||||
Чтобы подключить плейлист, нужно в настройках медиаплеера указать ссылку в следующем формате:
|
||||
@ -64,6 +65,7 @@ iptv.axenov.dev/?<ID> (устаревший формат)
|
||||
Либо провернуть всё то же самое через браузер.
|
||||
|
||||
<a id="iniformat"></a>
|
||||
|
||||
## Формат `playlists.ini`
|
||||
|
||||
```ini
|
||||
@ -98,6 +100,7 @@ redirect = 1
|
||||
Плейлистов с редиректами может быть сколько угодно, но они не должны быть цикличными.
|
||||
|
||||
<a id="api"></a>
|
||||
|
||||
## API
|
||||
|
||||
Можно получать состояние плейлистов из этого сборника при помощи метода:
|
||||
@ -181,11 +184,18 @@ GET https://iptv.axenov.dev/<ID>/json
|
||||
* `message` -- текст ошибки curl
|
||||
|
||||
<a id="deploy"></a>
|
||||
|
||||
## Развёртывание проекта
|
||||
|
||||
1. Выполнить `cp src/.env.example src/.env`, установить необходимые параметры
|
||||
2. Выполнить `docker compose up -d --build`
|
||||
3. Открыть `http://<APP_URL>:8080`
|
||||
### Aвтоматически
|
||||
|
||||
Выполнить `./iptv init`
|
||||
|
||||
### Вручную
|
||||
|
||||
1. Выполнить `cp src/.env.example src/.env`, установить необходимые параметры в файле `src/.env`
|
||||
2. Выполнить `docker compose up -d --build` (или `./iptv up`)
|
||||
3. Открыть `http://<APP_URL>:8080` в браузере (или `./iptv open`)
|
||||
|
||||
Если на сервере, на котором запускаются контейнеры, стоит apache2, то его можно использовать как реверс прокси:
|
||||
|
||||
@ -235,6 +245,7 @@ $ sudo systemctl restart apache2
|
||||
```
|
||||
|
||||
<a id="tools"></a>
|
||||
|
||||
## Дополнительные инструменты (`./tools`)
|
||||
|
||||
### `download-all.sh`
|
||||
@ -367,6 +378,7 @@ http://live02-cdn.tv.ti.ru:80/dtv/id376_NBN_SG--Fox_HD/04/plst.m3u8
|
||||
```
|
||||
|
||||
<a id="howtomake"></a>
|
||||
|
||||
## Как создать свой собственный плейлист?
|
||||
|
||||
1. Скачать все плейлисты, указанные в [`playlists.ini`](playlists.ini):
|
||||
@ -389,6 +401,7 @@ http://live02-cdn.tv.ti.ru:80/dtv/id376_NBN_SG--Fox_HD/04/plst.m3u8
|
||||
5. Вручную: добавить плейлист в IPTV-плеер и перепроверить результат.
|
||||
|
||||
<a id="stack"></a>
|
||||
|
||||
## Использованный стек
|
||||
|
||||
* [docker compose](https://docs.docker.com/compose/)
|
||||
@ -399,6 +412,7 @@ http://live02-cdn.tv.ti.ru:80/dtv/id376_NBN_SG--Fox_HD/04/plst.m3u8
|
||||
* bash
|
||||
|
||||
<a id="license"></a>
|
||||
|
||||
## Лицензия
|
||||
|
||||
[The MIT License](LICENSE)
|
||||
|
29
iptv
Executable file
29
iptv
Executable file
@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
# https://gist.github.com/anthonyaxenov/89c99e09ddb195985707e2b24a57257d
|
||||
|
||||
CONTAINER="iptv-php" # the name of the container in which to 'exec' something
|
||||
CONFIG="$(dirname $([ -L $0 ] && readlink -f $0 || echo $0))/docker-compose.yml" # path to compose yml file
|
||||
CMD="docker-compose -f $CONFIG" # docker-compose command
|
||||
APP_URL='http://localhost:8080/'
|
||||
|
||||
open_browser() {
|
||||
if which xdg-open > /dev/null; then
|
||||
xdg-open "$1" </dev/null >/dev/null 2>&1 & disown
|
||||
elif which gnome-open > /dev/null; then
|
||||
gnome-open "$1" </dev/null >/dev/null 2>&1 & disown
|
||||
fi
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
'' | 'help' ) echo -e "Provide one of operations: \t init, start, stop, up, down, restart, rebuild, open";
|
||||
echo "Otherwise all args will passed to 'docker exec -ti $CONTAINER ...'" ;;
|
||||
'init' ) cp src/.env.example src/.env && nano src/.env && ./iptv up && ./iptv composer i && ./iptv open && echo -e "\nYou're welcome!\n\t$APP_URL";;
|
||||
'up' ) $CMD up -d --build && ./iptv open ;; # build and start containers
|
||||
'down' ) $CMD down --remove-orphans ;; # stop and remove containers
|
||||
'start' ) $CMD start && ./iptv open ;; # start containers
|
||||
'stop' ) $CMD stop ;; # stop containers
|
||||
'restart' ) $CMD stop && $CMD start ;; # restart containers
|
||||
'rebuild' ) $CMD down --remove-orphans && $CMD up -d --build ;; # rebuild containers
|
||||
'open' ) open_browser $APP_URL ;;
|
||||
* ) docker exec -ti $CONTAINER $@ # exec anything else in container
|
||||
esac
|
@ -1,5 +1,5 @@
|
||||
APP_TITLE=
|
||||
APP_URL=
|
||||
APP_TITLE='Плейлисты IPTV'
|
||||
APP_URL=http://localhost:8080
|
||||
TWIG_CACHE=1
|
||||
TWIG_DEBUG=0
|
||||
FLIGHT_CASE_SENSITIVE=0
|
||||
|
Loading…
Reference in New Issue
Block a user