The way you can update Lychee depends of how you did your installation:
git clone then you can either use a similar process or do it directly online via the Graphical User Interface of Lychee.Don't forget to take a look at the Changelog to see what's new and to check for any actions that may be required.
Fully updating Lychee with git is the easiest way:
# download the lastest files
git pull
# update composer dependencies
composer install --no-dev
# apply the database migration
php artisan migrate
# update Node.js dependencies
npm install
# generate frontend assets
npm run build
If you have the post-merge hook set up the following is enough:
git pull
There are two cases. Either you are pinned to a release tag, e.g. v5.1.2 or you are using a rolling update tag.
{tip} When using docker, a version rollback is difficult to apply: it requires to bash into the container to run the required migrate commands on the new version before dropping the tag to the previous value.
This procedure is for those following one of those tags:
latest — the last official releasenightly or dev — the last build from the master branch (peer reviewed)alpha — the last build from the alpha branch (no peer review)Simply run the following.
docker compose down
docker compose pull
docker compose up -d
The database migrations will be applied automatically.
First edit your docker-compose.yml to point to the version you would like to migrate to.
- image: lycheeorg/lychee:v5.1.0
+ image: lycheeorg/lychee:v5.1.2
Save and run the following.
docker compose down
docker compose pull
docker compose up -d
The migration will be applied automatically and you should be running the requested tagged version.
This update will be the one you have to use if you are following the Release channel.
public/uploads/, public/dist/user.css and .env (and database/database.sqlite if using SQLite as your database)Diagnostic page and click on the Apply migration button.This requires:
git to be installedwww-data for apache2) to all the folders, files and .git/.exec to be available as a php function.allow_online_git_pull has to be set to 1Notice that Lychee version (git) tells you:
However you should see a "check for Updates" button:

If you click on it, it will ask your server to check how far behind you are from the bleeding edge version of Lychee:

Notice that Lychee version (git) now tells you:

By clicking on "Update available" this will trigger server side a git pull and artisan migrate.

You can see the log result of the command line printed above the diagnostic information. By default composer calls are disabled.

We can once again check for updates:


And we are done.
{tip} Caught a mistake or want to contribute to the documentation? Edit this page on Github!