Remapping channel numbers

Awesome. Thank you, I'll need with it. Is that the file you have us put the ip address in?

no, that's the .env file for laravel. the docker-compose file is the one that defines the entire stack (frontend/backend/mapper)...

1 Like

OK. Cool. Thank you sir.

1 Like

Update: it completely worked. I now have a non-docker front end that points to the backend docker channel remapping program! Thanks for the tips. Hopefullythe hardwarettranscoding will work better than software was when they were both insidethe containers.

1 Like

Hopping on here to ask another question.

I had to do a fresh install of my DVR PC due to some tinkering gone wrong. In resetting everything up, I've run into an error in regards to the PHP application. It's not running at all, just stuck in a restarting phase.

I pulled up the docker-compose logs, and this is what they said.

channels-mapper     | Starting Apache httpd web server: apache2.
channels-mapper     | Installing dependencies from lock file (including require-dev)
channels-mapper     | Verifying lock file contents can be installed on current platform.
channels-mapper     | Your lock file does not contain a compatible set of packages. Please run composer update.
channels-mapper     | 
channels-mapper     |   Problem 1
channels-mapper     |     - phpspec/prophecy is locked to version 1.12.1 and an update of this package was not requested.
channels-mapper     |     - phpspec/prophecy 1.12.1 requires php ^7.2 || ~8.0, <8.1 -> your php version (8.1.3) does not satisfy that requirement.
channels-mapper     |   Problem 2
channels-mapper     |     - phpspec/prophecy 1.12.1 requires php ^7.2 || ~8.0, <8.1 -> your php version (8.1.3) does not satisfy that requirement.
channels-mapper     |     - phpunit/phpunit 9.4.3 requires phpspec/prophecy ^1.12.1 -> satisfiable by phpspec/prophecy[1.12.1].
channels-mapper     |     - phpunit/phpunit is locked to version 9.4.3 and an update of this package was not requested.
channels-mapper     | 
channels-mapper     | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.20.0.2. Set the 'ServerName' directive globally to suppress this message

As mentioned prior, I'm not super familiar with Docker containers. Does the PHP version rely on the parent system's version control? How would I go about fixing this?

Any tips are much appreciated! Thanks!!!

i think the problem here is that the latest version of the apache-buster php image is using php 8.1, and phpspec/prophecy doesn't have an 8.1 release yet. we should be able to resolve this by telling it to use php 8.0.x instead.

try this: in the code mapper Dockerfile, change the top line from this...

FROM php:apache-buster

to this:

FROM php:8.0.16-apache-buster

and then rebuild everything.

8.0.16 is the latest 8.0.x version i could find a php apache-buster docker image for. i think this will work, let me know if you have any issues.

1 Like

That did the trick. Thank you very much.

1 Like

@crackers8199 Is it possible to run the mapper in a docker with pre-existing frontend AND backend?

I could use a bit of help getting this up and running on Windows 10. I put this aside a while ago because it was beyond me. Since then I have gained a bit more confidence with docker. I am having an issue and was wondering if anyone that has it up and running on Windows or @crackers8199 can point me in the right direction.
I have some success but then I see this:

Creating channels-backend   ... done
Creating channels-frontend  ... done
Creating channels-mapper    ... done
Creating channels-mapper-db ... done
Attaching to channels-frontend, channels-mapper-db, channels-backend, channels-mapper
channels-backend     | Running Channels DVR..
channels-frontend    | Running Channels DVR..
channels-mapper-db   | 2022-05-06 21:26:18+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.38-1debian10 started.
channels-mapper-db   | 2022-05-06 21:26:18+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
channels-mapper-db   | 2022-05-06 21:26:18+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.38-1debian10 started.
channels-mapper-db   | 2022-05-06 21:26:18+00:00 [Note] [Entrypoint]: Initializing database files
channels-mapper-db   | 2022-05-06T21:26:18.802328Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
channels-mapper-db   | 2022-05-06T21:26:19.103545Z 0 [Warning] InnoDB: New log files created, LSN=45790
channels-mapper-db   | 2022-05-06T21:26:19.179380Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
channels-mapper-db   | 2022-05-06T21:26:19.200677Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 2b452776-cd83-11ec-8902-0242ac140002.
channels-mapper-db   | 2022-05-06T21:26:19.206864Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
channels-mapper      | Starting Apache httpd web server: apache2AH00112: Warning: DocumentRoot [/var/www/html/public] does not exist
channels-mapper      | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.20.0.3. Set the 'ServerName' directive globally to suppress this message
channels-mapper-db   | 2022-05-06T21:26:19.924564Z 0 [Warning] A deprecated TLS version TLSv1 is enabled. Please use TLSv1.2 or higher.
channels-mapper-db   | 2022-05-06T21:26:19.924627Z 0 [Warning] A deprecated TLS version TLSv1.1 is enabled. Please use TLSv1.2 or higher.
channels-mapper-db   | 2022-05-06T21:26:19.925484Z 0 [Warning] CA certificate ca.pem is self signed.
channels-mapper-db   | 2022-05-06T21:26:19.954428Z 1 [Warning] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
channels-mapper      | .
channels-mapper      | chmod: cannot access '/var/www/html/storage': No such file or directory
channels-mapper      | AH00112: Warning: DocumentRoot [/var/www/html/public] does not exist
channels-mapper      | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.20.0.3. Set the 'ServerName' directive globally to suppress this message
channels-mapper      | .
channels-mapper      | chmod: cannot access '/var/www/html/storage': No such file or directory
channels-mapper exited with code 1
channels-mapper      | AH00112: Warning: DocumentRoot [/var/www/html/public] does not exist
channels-mapper      | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.20.0.3. Set the 'ServerName' directive globally to suppress this message
channels-mapper-db   | 2022-05-06 21:26:23+00:00 [Note] [Entrypoint]: Database files initialized
channels-mapper-db   | 2022-05-06 21:26:23+00:00 [Note] [Entrypoint]: Starting temporary server
channels-mapper-db   | 2022-05-06 21:26:23+00:00 [Note] [Entrypoint]: Waiting for server startup
channels-mapper-db   | 2022-05-06T21:26:23.288747Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
channels-mapper-db   | 2022-05-06T21:26:23.290197Z 0 [Note] mysqld (mysqld 5.7.38) starting as process 78 ...
channels-mapper-db   | 2022-05-06T21:26:23.293890Z 0 [Note] InnoDB: PUNCH HOLE support available
channels-mapper-db   | 2022-05-06T21:26:23.293938Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
channels-mapper-db   | 2022-05-06T21:26:23.293945Z 0 [Note] InnoDB: Uses event mutexes
channels-mapper-db   | 2022-05-06T21:26:23.293950Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
channels-mapper-db   | 2022-05-06T21:26:23.293954Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
channels-mapper-db   | 2022-05-06T21:26:23.293958Z 0 [Note] InnoDB: Using Linux native AIO
channels-mapper-db   | 2022-05-06T21:26:23.294927Z 0 [Note] InnoDB: Number of pools: 1
channels-mapper-db   | 2022-05-06T21:26:23.295070Z 0 [Note] InnoDB: Using CPU crc32 instructions
channels-mapper-db   | 2022-05-06T21:26:23.297392Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
channels-mapper-db   | 2022-05-06T21:26:23.311682Z 0 [Note] InnoDB: Completed initialization of buffer pool
channels-mapper-db   | 2022-05-06T21:26:23.314940Z 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
channels-mapper-db   | 2022-05-06T21:26:23.327038Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
channels-mapper-db   | 2022-05-06T21:26:23.338163Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
channels-mapper-db   | 2022-05-06T21:26:23.338279Z 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
channels-mapper-db   | 2022-05-06T21:26:23.356913Z 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
channels-mapper-db   | 2022-05-06T21:26:23.357543Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active.
channels-mapper-db   | 2022-05-06T21:26:23.357585Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active.
channels-mapper-db   | 2022-05-06T21:26:23.359063Z 0 [Note] InnoDB: 5.7.38 started; log sequence number 2749976
channels-mapper-db   | 2022-05-06T21:26:23.359339Z 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
channels-mapper-db   | 2022-05-06T21:26:23.359547Z 0 [Note] Plugin 'FEDERATED' is disabled.
channels-mapper-db   | 2022-05-06T21:26:23.361931Z 0 [Note] InnoDB: Buffer pool(s) load completed at 220506 21:26:23
channels-mapper-db   | 2022-05-06T21:26:23.366589Z 0 [Note] Found ca.pem, server-cert.pem and server-key.pem in data directory. Trying to enable SSL support using them.
channels-mapper-db   | 2022-05-06T21:26:23.366635Z 0 [Note] Skipping generation of SSL certificates as certificate files are present in data directory.
channels-mapper-db   | 2022-05-06T21:26:23.366643Z 0 [Warning] A deprecated TLS version TLSv1 is enabled. Please use TLSv1.2 or higher.
channels-mapper-db   | 2022-05-06T21:26:23.366647Z 0 [Warning] A deprecated TLS version TLSv1.1 is enabled. Please use TLSv1.2 or higher.
channels-mapper-db   | 2022-05-06T21:26:23.367300Z 0 [Warning] CA certificate ca.pem is self signed.
channels-mapper-db   | 2022-05-06T21:26:23.367404Z 0 [Note] Skipping generation of RSA key pair as key files are present in data directory.
channels-mapper-db   | 2022-05-06T21:26:23.371602Z 0 [Warning] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
channels-mapper-db   | 2022-05-06T21:26:23.383936Z 0 [Note] Event Scheduler: Loaded 0 events
channels-mapper-db   | 2022-05-06T21:26:23.384949Z 0 [Note] mysqld: ready for connections.
channels-mapper-db   | Version: '5.7.38'  socket: '/var/run/mysqld/mysqld.sock'  port: 0  MySQL Community Server (GPL)
channels-mapper      | .
channels-mapper      | chmod: cannot access '/var/www/html/storage': No such file or directory
channels-mapper-db   | 2022-05-06 21:26:24+00:00 [Note] [Entrypoint]: Temporary server started.
channels-mapper exited with code 1
channels-mapper      | AH00112: Warning: DocumentRoot [/var/www/html/public] does not exist
channels-mapper      | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.20.0.3. Set the 'ServerName' directive globally to suppress this message
channels-mapper      | .
channels-mapper      | chmod: cannot access '/var/www/html/storage': No such file or directory
channels-mapper-db   | Warning: Unable to load '/usr/share/zoneinfo/iso3166.tab' as time zone. Skipping it.
channels-mapper-db   | Warning: Unable to load '/usr/share/zoneinfo/leap-seconds.list' as time zone. Skipping it.
channels-mapper exited with code 1
channels-mapper      | AH00112: Warning: DocumentRoot [/var/www/html/public] does not exist
channels-mapper      | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.20.0.3. Set the 'ServerName' directive globally to suppress this message
channels-mapper      | .
channels-mapper      | chmod: cannot access '/var/www/html/storage': No such file or directory
channels-mapper exited with code 1

Keep getting these type of errors - Any help will be appreciated Thanks!

shouldn't be an issue, it just sits inbetween them and re-maps the channel numbers for you. you'd just need to modify the backend env var to fit your scenario.

1 Like

let me take a deeper look at this tonight and see if i can figure out what's going on here...i'll get back to you tonight or tomorrow.

1 Like

@kanipek I apologize I still haven't had a chance to look at this...will try to figure it out this weekend.

1 Like

Did anyone end up getting this working in Synology?

Hi @crackers8199 would you mind trying to help me out with the ports? I went through the install instructions and made it all the way up to the end of the docker-compose step, but it failed due to address already in use.

I assume this is because I already have an instance of Channels running on port 8089 and/or there is a conflict with one of my other Docker containers. I was able to get both channels-frontend and channels-backend running by changing the ports, but I don't think I did it right. Can you walk me through it and how the ports need to relate between the different containers.

Here is what I have running currently:

Channels: Existing instance on port 8089
channels-baseball: Local Port 8080, Container Port 8080
pluto-for-channels: Local Port 8081, Container Port 80

channels-frontend: Local Port 8088, Container Port 80
channels-backend: Local Port 8090, Container Port 8089
channels-mapper-db (No port settings)

What do I need to change here to get everything working together as intended?

Thanks!

i was looking for a easy way to change the logos in the guide. ive been trying to read threw all the comments, so i apologize if i missed something.

i ve been using zaptoxml and steve to make custom m3u lists and custom xml guide and custom logos. channels dvr does a great job with mapping xml guide, although they lack in the other 2 topics.so i still need zaptoxml and xteve. i seen this article but it seems a bit involved to just update the logos. it seems i need dockers setup and php . which are 2 topics i dont feel comfortable with.

2 Likes

I'm another Channels newbie taking the plunge with this remapping channels solution. I have the backend setup and added my service Hulu Live and want to go in and do the remapping. Now when I type in the URL for the backend Channels: http://192.168.x.xx:8090 it just takes me to the admin/settings page and I don't know how to get back to the channel mapper view to start mapping channels. Any suggestions?

2 Likes

the channel mapper itself should be on port 80 if you set it up the way it's described in the post

1 Like

@crackers8199 Can you put the guide back up or post into this thread? I was just looking at this days ago and now ready to try and I see the guide is gone.

1 Like

Never mind, I found the guide here. Channels DVR: Remapping Channel Numbers | deedni

4 Likes

thanks for this. i didn't realize the redirect was broken...i'll edit my original post.