Skip to content

Commit 39e95f9

Browse files
committed
more text
1 parent 9dea4ab commit 39e95f9

3 files changed

Lines changed: 97 additions & 92 deletions

File tree

docs/upgrade.md

Lines changed: 95 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -1,94 +1,10 @@
1-
## Checking requirements
21

3-
Check that the server satisfifes the [requirements](installation.html#web-server-configuration). In particular pay attention the PHP extensions.
4-
You can display installed PHP extensions using `phpinfo()`.
5-
6-
## Preparing the files
7-
8-
Assuming the following tree:
9-
```
10-
/var/
11-
|- www/
12-
|- html/
13-
|- Lychee/
14-
|- <you are here>
15-
```
16-
17-
Rename Lychee into Lychee-v3:
18-
```bash
19-
mv Lychee Lychee-v3
20-
```
21-
22-
Install Lychee files by either uploading the content of the released zip or cloning the repository:
23-
```bash
24-
git clone https://github.com/LycheeOrg/Lychee Lychee
25-
```
26-
27-
Move the pictures from the version 3 to the newly created installation:
28-
```bash
29-
mv Lychee-v3/uploads/big/* Lychee/public/uploads/big/
30-
mv Lychee-v3/uploads/medium/* Lychee/public/uploads/medium/
31-
mv Lychee-v3/uploads/small/* Lychee/public/uploads/small/
32-
mv Lychee-v3/uploads/thumb/* Lychee/public/uploads/thumb/
33-
```
34-
35-
## Preparing the server
36-
37-
> {note} The big difference between Lychee version 3 and Lychee version 4 is the served directory, i.e. where you webserver needs to point to.
38-
39-
- In the version 3, this was the root `.` of Lychee.
40-
- In the version 4, this is the `public` directory inside Lychee.
41-
42-
### Using Apache
43-
44-
**Make sure you have the module rewrite available and enabled: `a2enmod rewrite`**.
45-
46-
Modify your `/etc/apache2/apache2.conf` to allow `.htaccess` to set up the rewrite rules:
47-
```apacheconf
48-
<Directory /var/www/html/Lychee>
49-
Options Indexes FollowSymLinks
50-
AllowOverride All
51-
Require all granted
52-
</Directory>
53-
```
54-
55-
Modify or create `example.com.conf` in `/etc/apache2/sites-available/` to point out the served directory:
56-
```apacheconf
57-
<VirtualHost *:80>
58-
ServerName example.com
59-
60-
DocumentRoot /var/www/html/Lychee/public
61-
62-
ErrorLog ${APACHE_LOG_DIR}/error.log
63-
CustomLog ${APACHE_LOG_DIR}/access.log combined
64-
</VirtualHost>
65-
```
662

67-
Enable the site:
68-
```bash
69-
a2ensite `example.com.conf`
70-
```
71-
72-
Restart apache2:
73-
```bash
74-
systemctl restart apache2
75-
```
76-
77-
Process with the
78-
79-
### Using Nginx
80-
81-
If you are using Nginx, an example configuration can be found [here](installation.html#web-server-configuration).
82-
83-
### Run the migrations
3+
## Upgrading Lychee docker installations from v6 to v7
844

85-
Make sure you have `DB_OLD_LYCHEE_PREFIX` set in your `.env` to correspond the table prefix of your old database, then run `php artisan migrate`.
86-
87-
## Upgrading from Lychee v6 to v7
88-
89-
> {danger} **Critical Breaking Changes**: Version 7 introduces significant architectural changes to the Docker setup. **You must update your docker-compose configuration** when upgrading from v6 to v7. Simply changing the image tag will not work.
5+
> {note} **Critical Breaking Changes**: Version 7 introduces significant architectural changes to the Docker setup. **You must update your docker-compose configuration** when upgrading from v6 to v7. Simply changing the image tag will not work.
906
91-
### Major Changes in v7
7+
### Major Changes in Version 7
928

939
Version 7 marks a fundamental shift in Lychee's Docker architecture:
9410

@@ -99,7 +15,7 @@ Version 7 marks a fundamental shift in Lychee's Docker architecture:
9915

10016
### Volume Mount Changes
10117

102-
#### v6 Volume Structure (OLD)
18+
#### Version 6 Volume Structure (OLD)
10319
```yaml
10420
volumes:
10521
- ./lychee/conf:/conf
@@ -109,7 +25,7 @@ volumes:
10925
- ./lychee/tmp:/lychee-tmp
11026
```
11127
112-
#### v7 Volume Structure (NEW)
28+
#### Version 7 Volume Structure (NEW)
11329
```yaml
11430
volumes:
11531
- ./lychee/uploads:/app/public/uploads
@@ -211,7 +127,7 @@ services:
211127
- lychee
212128
```
213129

214-
> {danger} **Critical**: When using worker services, you **must** set `QUEUE_CONNECTION=database` (or `redis` if using Redis) in **both** the API and worker services. Without this, jobs will not be processed properly.
130+
> {note} **Critical**: When using worker services, you **must** set `QUEUE_CONNECTION=database` (or `redis` if using Redis) in **both** the API and worker services. Without this, jobs will not be processed properly.
215131

216132
### Worker Service Benefits
217133

@@ -333,3 +249,92 @@ Follow these steps to migrate from v6 to v7:
333249
- Check database service is healthy: `docker-compose ps lychee_db`
334250

335251
For more help, visit our [GitHub Discussions](https://github.com/LycheeOrg/Lychee/discussions) or [Discord server](https://discord.gg/y4aUbnF).
252+
253+
254+
## Upgrading from Lychee v3 to v4
255+
256+
### Checking requirements
257+
258+
Check that the server satisfifes the [requirements](installation.html#web-server-configuration). In particular pay attention the PHP extensions.
259+
You can display installed PHP extensions using `phpinfo()`.
260+
261+
### Preparing the files
262+
263+
Assuming the following tree:
264+
```
265+
/var/
266+
|- www/
267+
|- html/
268+
|- Lychee/
269+
|- <you are here>
270+
```
271+
272+
Rename Lychee into Lychee-v3:
273+
```bash
274+
mv Lychee Lychee-v3
275+
```
276+
277+
Install Lychee files by either uploading the content of the released zip or cloning the repository:
278+
```bash
279+
git clone https://github.com/LycheeOrg/Lychee Lychee
280+
```
281+
282+
Move the pictures from the version 3 to the newly created installation:
283+
```bash
284+
mv Lychee-v3/uploads/big/* Lychee/public/uploads/big/
285+
mv Lychee-v3/uploads/medium/* Lychee/public/uploads/medium/
286+
mv Lychee-v3/uploads/small/* Lychee/public/uploads/small/
287+
mv Lychee-v3/uploads/thumb/* Lychee/public/uploads/thumb/
288+
```
289+
290+
### Preparing the server
291+
292+
> {note} The big difference between Lychee version 3 and Lychee version 4 is the served directory, i.e. where you webserver needs to point to.
293+
294+
- In the version 3, this was the root `.` of Lychee.
295+
- In the version 4, this is the `public` directory inside Lychee.
296+
297+
#### Using Apache
298+
299+
**Make sure you have the module rewrite available and enabled: `a2enmod rewrite`**.
300+
301+
Modify your `/etc/apache2/apache2.conf` to allow `.htaccess` to set up the rewrite rules:
302+
```apacheconf
303+
<Directory /var/www/html/Lychee>
304+
Options Indexes FollowSymLinks
305+
AllowOverride All
306+
Require all granted
307+
</Directory>
308+
```
309+
310+
Modify or create `example.com.conf` in `/etc/apache2/sites-available/` to point out the served directory:
311+
```apacheconf
312+
<VirtualHost *:80>
313+
ServerName example.com
314+
315+
DocumentRoot /var/www/html/Lychee/public
316+
317+
ErrorLog ${APACHE_LOG_DIR}/error.log
318+
CustomLog ${APACHE_LOG_DIR}/access.log combined
319+
</VirtualHost>
320+
```
321+
322+
Enable the site:
323+
```bash
324+
a2ensite `example.com.conf`
325+
```
326+
327+
Restart apache2:
328+
```bash
329+
systemctl restart apache2
330+
```
331+
332+
Process with the
333+
334+
#### Using Nginx
335+
336+
If you are using Nginx, an example configuration can be found [here](installation.html#web-server-configuration).
337+
338+
#### Run the migrations
339+
340+
Make sure you have `DB_OLD_LYCHEE_PREFIX` set in your `.env` to correspond the table prefix of your old database, then run `php artisan migrate`.

gen.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ def generate_base():
4848
pages_title['configuration'] = 'Configuration'
4949
pages_title['docker'] = 'Docker'
5050
pages_title['update'] = 'Update'
51-
pages_title['upgrade'] = 'Upgrade from v3'
51+
pages_title['upgrade'] = 'Upgrade Lychee'
5252

5353
pages_title['settings'] = 'Settings'
5454
pages_title['keyboard'] = 'Keyboard Shortcuts'

src/content/post/2025-12-31-version-7.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ In May 2025, FrankenPHP gained official support from the PHP Foundation, cementi
2929

3030
The new FrankenPHP-powered Docker image is available at `ghcr.io/lycheeorg/lychee:edge` and will become the default once version 7 is fully stable.
3131

32-
This architectural change means you will need to update your Docker setup when upgrading from version 6 to version 7 with FrankenPHP. Please refer to our [upgrade documentation](https://lycheeorg.github.io/docs/upgrading-from-lychee-v6-to-v7) for detailed instructions.
32+
This architectural change means you will need to update your Docker setup when upgrading from version 6 to version 7 with FrankenPHP. Please refer to our [upgrade documentation](https://lycheeorg.github.io/docs/upgrade.html) for detailed instructions.
3333

3434
#### Performance Revolution
3535

0 commit comments

Comments
 (0)