Добавлен keydb

This commit is contained in:
Anthony Axenov 2025-03-03 01:48:24 +08:00
parent cb38d26abe
commit 56bc180de5
Signed by: anthony
GPG Key ID: EA9EC32FF7CCD4EC
11 changed files with 3447 additions and 7 deletions

View File

@ -1 +1,2 @@
IPTV_ENV=dev
REDIS_PORT=6379

1
.gitignore vendored
View File

@ -11,4 +11,5 @@ downloaded/
*.m3u.*
*.m3u8
*.m3u8.*
*.rdb
!/**/.gitkeep

View File

@ -4,6 +4,22 @@ networks:
services:
keydb:
container_name: iptv-keydb
image: eqalpha/keydb:latest
restart: unless-stopped
volumes:
- /etc/localtime:/etc/localtime:ro
- ./docker/keydb/keydb.conf:/etc/keydb/keydb.conf
- ./docker/keydb/data/:/data:rw
- ./log/keydb:/var/log/keydb/:rw
env_file:
- .env
ports:
- "${REDIS_PORT:-6379}:6379"
networks:
- iptv
php:
container_name: iptv-php
env_file:
@ -14,7 +30,7 @@ services:
dockerfile: docker/php/${IPTV_ENV}.dockerfile
restart: unless-stopped
extra_hosts:
- "host.docker.internal:host-gateway"
- host.docker.internal:host-gateway
networks:
- iptv
volumes:
@ -24,13 +40,15 @@ services:
- ./log/php:/var/log/php:rw
- ./src:/var/www:rw
- ./playlists.ini:/var/www/config/playlists.ini:ro
depends_on:
- keydb
nginx:
container_name: iptv-nginx
image: nginx:latest
restart: unless-stopped
extra_hosts:
- "host.docker.internal:host-gateway"
- host.docker.internal:host-gateway
networks:
- iptv
volumes:

View File

1835
docker/keydb/keydb.conf Normal file

File diff suppressed because it is too large Load Diff

View File

@ -5,9 +5,13 @@ RUN apt update && \
apt install -y git unzip 7zip
# https://pecl.php.net/package/xdebug
# https://pecl.php.net/package/redis
RUN pecl channel-update pecl.php.net && \
pecl install xdebug-3.3.2 unzip && \
mkdir -p /var/log/php
pecl install xdebug-3.4.1 redis && \
docker-php-ext-enable redis && \
mkdir -p /var/run/php && \
mkdir -p /var/log/php && \
chmod -R 777 /var/log/php
COPY --from=composer /usr/bin/composer /usr/local/bin/composer

View File

@ -4,8 +4,16 @@ RUN apt update && \
apt upgrade -y && \
apt install -y git
# https://pecl.php.net/package/redis
RUN pecl channel-update pecl.php.net && \
pecl install redis && \
docker-php-ext-enable redis && \
mkdir -p /var/log/php && \
chmod -R 777 /var/log/php
COPY --from=composer /usr/bin/composer /usr/local/bin/composer
USER www-data
EXPOSE 9000
WORKDIR /var/www
CMD composer install

View File

@ -3,7 +3,7 @@ user = www-data
group = www-data
listen = 127.0.0.1:9000
pm = dynamic
pm.max_children = 20
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
@ -16,6 +16,6 @@ access.log = /var/log/php/$pool.access.log
; chroot = /var/www
; chdir = /var/www
php_flag[display_errors] = on
php_admin_value[error_log] = /var/log/php/www.error.log
php_admin_value[error_log] = /var/log/php/$pool.error.log
php_admin_flag[log_errors] = on
php_admin_value[memory_limit] = 512M

0
log/redis/.gitkeep Normal file
View File

View File

@ -1 +0,0 @@
src/config/playlists.ini

1561
playlists.ini Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,25 @@
{
"name": "axenov/iptv",
"type": "project",
"description": "Сервис для сбора IPTV-плейлистов и сокращения ссылок",
"authors": [
{
"name": "Anthony Axenov",
"homepage": "https://axenov.dev/",
"role": "author"
}
],
"license": "MIT",
"require": {
"php": "^8.3",
"ext-json": "*",
"ext-curl": "*",
"ext-redis": "*",
"ext-fileinfo": "*",
"mikecao/flight": "^3.12",
"symfony/dotenv": "^7.1",
"twig/twig": "^3.14"
"ext-redis": "*",
},
"autoload": {
"psr-4": {