Pelican Panel fails to update #778

Closed
opened 2026-02-04 21:25:09 +03:00 by OVERLORD · 15 comments
Owner

Originally created by @ozhound on GitHub (Apr 9, 2025).

Have you read and understood the above guidelines?

yes

📜 What is the name of the script you are using?

Pelican-Panel (Update Command)

📂 What was the exact command used to execute the script?

update from within the lxc

📝 Provide a clear and concise description of the issue.

this fails to update using the update script

⚙️ What settings are you using?

  • Default Settings
  • Advanced Settings

🖥️ Which Linux distribution are you using?

No response

🔄 Steps to reproduce the issue.

try to update pelican from beta 18 to beta 19 using the update command

Paste the full error output (if available).

⠸ Migrating PHP 8.3 to 8.4NOTICE: Not enabling PHP 8.4 FPM by default.
NOTICE: To enable PHP 8.4 FPM in Apache2 do:
NOTICE: a2enmod proxy_fcgi setenvif
NOTICE: a2enconf php8.4-fpm
NOTICE: You are seeing this message because you have apache2 package installed.
  ✔️   Migrated PHP 8.3 to 8.4
⠹ Stopping Service
   INFO  Application is already down.  

  ✔️   Stopped Service
⠸ Updating Pelican-Panel to v1.0.0-beta19environment: line 60: composer: command not found

[ERROR] in line 60: exit code 0: while executing command $STD composer install --no-dev --optimize-autoloader --no-interaction

🖼️ Additional context (optional).

This breaks the install and i need to restore a backup to return the lxc to a usable state

Originally created by @ozhound on GitHub (Apr 9, 2025). ### ✅ Have you read and understood the above guidelines? yes ### 📜 What is the name of the script you are using? Pelican-Panel (Update Command) ### 📂 What was the exact command used to execute the script? update from within the lxc ### 📝 Provide a clear and concise description of the issue. this fails to update using the update script ### ⚙️ What settings are you using? - [ ] Default Settings - [ ] Advanced Settings ### 🖥️ Which Linux distribution are you using? _No response_ ### 🔄 Steps to reproduce the issue. try to update pelican from beta 18 to beta 19 using the update command ### ❌ Paste the full error output (if available). ``` ⠸ Migrating PHP 8.3 to 8.4NOTICE: Not enabling PHP 8.4 FPM by default. NOTICE: To enable PHP 8.4 FPM in Apache2 do: NOTICE: a2enmod proxy_fcgi setenvif NOTICE: a2enconf php8.4-fpm NOTICE: You are seeing this message because you have apache2 package installed. ✔️ Migrated PHP 8.3 to 8.4 ⠹ Stopping Service INFO Application is already down. ✔️ Stopped Service ⠸ Updating Pelican-Panel to v1.0.0-beta19environment: line 60: composer: command not found [ERROR] in line 60: exit code 0: while executing command $STD composer install --no-dev --optimize-autoloader --no-interaction ``` ### 🖼️ Additional context (optional). This breaks the install and i need to restore a backup to return the lxc to a usable state
OVERLORD added the bug label 2026-02-04 21:25:09 +03:00
Author
Owner

@MickLesk commented on GitHub (Apr 9, 2025):

Composer issue are not our Issues. Its an Pelican Thing

idk why you get an composer not found. How you execute this? ssh? some external program?

@MickLesk commented on GitHub (Apr 9, 2025): Composer issue are not our Issues. Its an Pelican Thing idk why you get an composer not found. How you execute this? ssh? some external program?
Author
Owner

@tremor021 commented on GitHub (Apr 9, 2025):

@ozhound can you do ls /usr/bin/composer inside LXC?

@tremor021 commented on GitHub (Apr 9, 2025): @ozhound can you do `ls /usr/bin/composer` inside LXC?
Author
Owner

@ozhound commented on GitHub (Apr 9, 2025):

@tremor021 sure, the file exists

/usr/bin/composer```
@ozhound commented on GitHub (Apr 9, 2025): @tremor021 sure, the file exists ```root@pelican-panel:~# ls /usr/bin/composer /usr/bin/composer```
Author
Owner

@tremor021 commented on GitHub (Apr 9, 2025):

not sure why its saying unknown command. please do: echo $PATH

@tremor021 commented on GitHub (Apr 9, 2025): not sure why its saying unknown command. please do: `echo $PATH`
Author
Owner

@ozhound commented on GitHub (Apr 9, 2025):

out of interest, I ran the manual update steps (including the composer command) and it all works up until it has to migrate the database, then it all goes to shit, but I didn't record the errors, i just restored from a back again as i needed it to be running.

result of echo command

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

@ozhound commented on GitHub (Apr 9, 2025): out of interest, I ran the manual update steps (including the composer command) and it all works up until it has to migrate the database, then it all goes to shit, but I didn't record the errors, i just restored from a back again as i needed it to be running. result of echo command ```root@pelican-panel:~# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Author
Owner

@tremor021 commented on GitHub (Apr 9, 2025):

hmm PATH is correct... so weird... Are you running it via SSH or Proxmox console ?

@tremor021 commented on GitHub (Apr 9, 2025): hmm PATH is correct... so weird... Are you running it via SSH or Proxmox console ?
Author
Owner

@ozhound commented on GitHub (Apr 9, 2025):

proxmox console, not ssh.

should i try ssh?

@ozhound commented on GitHub (Apr 9, 2025): proxmox console, not ssh. should i try ssh?
Author
Owner

@tremor021 commented on GitHub (Apr 9, 2025):

no
please do update and give us the other errors you received... this is a weird bug.

@tremor021 commented on GitHub (Apr 9, 2025): no please do update and give us the other errors you received... this is a weird bug.
Author
Owner

@ozhound commented on GitHub (Apr 9, 2025):

I noticed that the official update lists the following command for the compose update

sudo COMPOSER_ALLOW_SUPERUSER=1 composer install --no-dev --optimize-autoloader

the allow_superuser flag is missing from the update script,

I also installed this originally as a privileged container, would this cause a problem?

@ozhound commented on GitHub (Apr 9, 2025): I noticed that the official update lists the following command for the compose update sudo COMPOSER_ALLOW_SUPERUSER=1 composer install --no-dev --optimize-autoloader the allow_superuser flag is missing from the update script, I also installed this originally as a privileged container, would this cause a problem?
Author
Owner

@tremor021 commented on GitHub (Apr 9, 2025):

you can test that

do export COMPOSER_ALLOW_SUPERUSER=1 then run update

@tremor021 commented on GitHub (Apr 9, 2025): you can test that do `export COMPOSER_ALLOW_SUPERUSER=1` then run update
Author
Owner

@ozhound commented on GitHub (Apr 10, 2025):

Ahh damn, no dice

NOTICE: a2enmod proxy_fcgi setenvif
NOTICE: a2enconf php8.4-fpm
NOTICE: You are seeing this message because you have apache2 package installed.
  ✔️   Migrated PHP 8.3 to 8.4
⠸ Stopping Service
   INFO  Application is now in maintenance mode.  

  ✔️   Stopped Service
⠼ Updating Pelican-Panel to v1.0.0-beta19environment: line 60: composer: command not found
⠴ Updating Pelican-Panel to v1.0.0-beta19
[ERROR] in line 60: exit code 0: while executing command $STD composer install --no-dev --optimize-autoloader --no-interaction

I guess I could just wipe everything and start again. I would have to recreate the node and setup all the servers again, though. That's not a big deal, I'd prefer not to have to do it, though.

@ozhound commented on GitHub (Apr 10, 2025): Ahh damn, no dice ```NOTICE: To enable PHP 8.4 FPM in Apache2 do: NOTICE: a2enmod proxy_fcgi setenvif NOTICE: a2enconf php8.4-fpm NOTICE: You are seeing this message because you have apache2 package installed. ✔️ Migrated PHP 8.3 to 8.4 ⠸ Stopping Service INFO Application is now in maintenance mode. ✔️ Stopped Service ⠼ Updating Pelican-Panel to v1.0.0-beta19environment: line 60: composer: command not found ⠴ Updating Pelican-Panel to v1.0.0-beta19 [ERROR] in line 60: exit code 0: while executing command $STD composer install --no-dev --optimize-autoloader --no-interaction ``` I guess I could just wipe everything and start again. I would have to recreate the node and setup all the servers again, though. That's not a big deal, I'd prefer not to have to do it, though.
Author
Owner

@ozhound commented on GitHub (Apr 11, 2025):

it looks like the update for php to 8.4 breaks the ability for composer to run, if i remove the code block that updates php it all works. except that i can no longer log into the panel, its as if all the users have been deleted

has anyone sucessfully run this script?

@ozhound commented on GitHub (Apr 11, 2025): it looks like the update for php to 8.4 breaks the ability for composer to run, if i remove the code block that updates php it all works. except that i can no longer log into the panel, its as if all the users have been deleted has anyone sucessfully run this script?
Author
Owner

@michelroegl-brunner commented on GitHub (Apr 23, 2025):

I can not for the life of me reproduce this. Also when i install a older php version i do not get it to break.
There seems to be some sketchy edge case with your install. I close this issue, as this seems not to be a script issue from our part. Maybee you can ask in the pelican-panel github if they can help you.

@michelroegl-brunner commented on GitHub (Apr 23, 2025): I can not for the life of me reproduce this. Also when i install a older php version i do not get it to break. There seems to be some sketchy edge case with your install. I close this issue, as this seems not to be a script issue from our part. Maybee you can ask in the pelican-panel github if they can help you.
Author
Owner

@ozhound commented on GitHub (Jul 8, 2025):

The previous issue i got around by setting the panel up from scratch and reinstalling the servers.

This time the update went through smoothly, so all good now

@ozhound commented on GitHub (Jul 8, 2025): The previous issue i got around by setting the panel up from scratch and reinstalling the servers. This time the update went through smoothly, so all good now
Author
Owner

@Akeyroid7 commented on GitHub (Jan 20, 2026):

I’m not asking to reopen this issue — just sharing additional info in case it helps.

In my environment, when entering the container via pct enter, the PATH sometimes becomes minimal and does not include /usr/local/bin:

root@CT-Pelican-Panel:~# echo "$PATH"
/sbin:/bin:/usr/sbin:/usr/bin

As a result, during the update process composer install fails with composer: command not found. The update then ends up leaving the panel in a broken state (e.g., missing vendor/autoload.php), and the panel won’t boot.

I was able to recover by running the steps manually, using the full path to composer and then executing the artisan commands (see below).

If it fits the project’s direction, I think one of these fail-safes could help prevent similar accidents:

  • Before any destructive removal step, check command -v composer and abort if it’s not available
  • Ensure /usr/local/bin is included in PATH in the script (or call composer via an absolute path)

If needed, I can also prepare a minimal PR.

(Recovery steps)

cd /opt/pelican-panel
/usr/local/bin/composer install --no-dev --optimize-autoloader --no-interaction
php artisan p:environment:setup
php artisan view:clear
php artisan config:clear
php artisan filament:optimize
php artisan migrate --seed --force
chown -R www-data:www-data /opt/pelican-panel
chmod -R 755 /opt/pelican-panel/storage /opt/pelican-panel/bootstrap/cache/
php artisan queue:restart
php artisan up
@Akeyroid7 commented on GitHub (Jan 20, 2026): I’m not asking to reopen this issue — just sharing additional info in case it helps. In my environment, when entering the container via `pct enter`, the PATH sometimes becomes minimal and does not include `/usr/local/bin`: ``` root@CT-Pelican-Panel:~# echo "$PATH" /sbin:/bin:/usr/sbin:/usr/bin ``` As a result, during the update process `composer install` fails with `composer: command not found`. The update then ends up leaving the panel in a broken state (e.g., missing `vendor/autoload.php`), and the panel won’t boot. I was able to recover by running the steps manually, using the full path to composer and then executing the artisan commands (see below). If it fits the project’s direction, I think one of these fail-safes could help prevent similar accidents: - Before any destructive removal step, check `command -v composer` and abort if it’s not available - Ensure `/usr/local/bin` is included in PATH in the script (or call composer via an absolute path) If needed, I can also prepare a minimal PR. (Recovery steps) ``` cd /opt/pelican-panel /usr/local/bin/composer install --no-dev --optimize-autoloader --no-interaction php artisan p:environment:setup php artisan view:clear php artisan config:clear php artisan filament:optimize php artisan migrate --seed --force chown -R www-data:www-data /opt/pelican-panel chmod -R 755 /opt/pelican-panel/storage /opt/pelican-panel/bootstrap/cache/ php artisan queue:restart php artisan up ```
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ProxmoxVE#778