Files
ente-cloudron/POSTINSTALL.md
Andreas Düren 1a7d5c5f27 Update POSTINSTALL.md
Fixed Administration setup documentation
2025-11-08 10:42:10 +00:00

92 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Your Ente installation is almost ready!
## Required: External Object Storage
Before using Ente, configure an S3-compatible object storage provider:
1. Open the Cloudron dashboard and select your Ente app.
2. Launch the file explorer.
3. Open `/app/data/config/s3.env` and provide values for **all** required keys.
4. Save the file and restart the app from the Cloudron dashboard.
5. (Required for cast/slideshow) Configure your S3 buckets CORS policy to allow the Ente domains you serve from Cloudron (e.g. `https://ente.cloudron.io`, `https://accounts.cloudron.io`, `https://cast.cloudron.io`, etc.). Without CORS, browsers will block the signed URLs that power the cast slideshow.
- **Backblaze B2 tip:** B2 ships with “native” CORS rules that block S3-style updates. Install the Backblaze CLI `pip install 'b2<4'`, then:
```bash
# Authorise once (replace with your key ID/secret)
b2 authorize-account <KEY_ID> <APP_KEY>
# Clear any native rules
b2 bucket update --cors-rules '[]' ente-due-ren allPublic
# Apply the S3-compatible rule (adjust origins as needed)
cat >cors.json <<'EOF'
[
{
"corsRuleName": "ente-web",
"allowedOrigins": [
"https://ente.due.ren",
"https://accounts.due.ren",
"https://auth.due.ren",
"https://albums.due.ren",
"https://cast.due.ren",
"https://family.due.ren"
],
"allowedHeaders": ["*"],
"allowedOperations": [
"s3_get_object",
"s3_head_object",
"b2_download_file_by_name",
"b2_download_file_by_id"
],
"exposeHeaders": ["ETag","Content-Length","Content-Type"],
"maxAgeSeconds": 86400
}
]
EOF
b2 bucket update --cors-rules "$(<cors.json)" ente-due-ren allPublic
```
Verify with `curl -I -H 'Origin: https://ente.due.ren' <signed-url>`; you should see `Access-Control-Allow-Origin`.
Supported variables:
- `S3_ENDPOINT` (e.g. `https://<account>.r2.cloudflarestorage.com`)
- `S3_REGION`
- `S3_BUCKET`
- `S3_ACCESS_KEY`
- `S3_SECRET_KEY`
- `S3_PREFIX` (optional path prefix)
## Required: Secondary Hostnames
The installer now asks for dedicated hostnames for the Auth/Accounts/Cast/Albums/Family web apps (via Cloudron `httpPorts`). If you manage DNS outside of Cloudron, create CNAME/A records such as `accounts.<app-domain>`, `auth.<app-domain>`, etc., pointing at the primary app domain. With Cloudron-managed DNS the records are created automatically.
## Administration
- **Grant yourself admin privileges**
1. Create an Ente account in the UI
2. Open the Cloudron dashboard → your Ente app → **Terminal**.
3. Click the Postgres button and hit enter
4. Get the user ID of the first user by running the following SQL query: ```SELECT * from users;```
5. Copy the value in ```user_id```
6. Open the Cloudron dashboard → your Ente app → **File Manager**.
7. Navigate to `/app/data/config/` and open (or create) `museum.override.yaml`.
8. Add your ```user_id``` to the admin list:
```yaml
internal:
admins:
- 1580559962386438
```
9. Save the file and restart the app. The override is appended to Museums configuration on every start.
- **Sign in to the bundled CLI**
From the Cloudron **Terminal** run:
```bash
# authenticate once (enter the OTP you receive by email)
ente account add
# inspect available commands
ente --help
# increase storage quota for account
ente admin update-subscription -a <admin-user-mail> -u <user-email-to-update> --no-limit true
```
After youre signed in you can follow the upstream docs for tasks like increasing storage: see [user administration](https://ente.io/help/self-hosting/administration/users) and the [CLI reference](https://ente.io/help/self-hosting/administration/cli).