2025-11-18 09:37:15 -06:00
2025-11-04 19:11:44 -06:00
2025-11-04 19:11:44 -06:00
2025-03-14 21:20:52 +01:00
2025-11-18 09:37:15 -06:00
2025-11-18 09:37:15 -06:00
2025-11-18 09:37:15 -06:00

Ente Cloudron App

This repository contains the Cloudron packaging for Ente, an open-source, end-to-end encrypted alternative to Google Photos and Apple Photos.

Features

  • Self-host your own encrypted photo backup service
  • Automatically integrates with Cloudron's PostgreSQL database
  • Configured to use Cloudron's mail service for sending emails
  • Easy to deploy and manage through the Cloudron interface

Building and Installing

Option 1: Build and Install Manually

  1. Clone this repository:

    git clone https://github.com/yourusername/ente-cloudron.git
    cd ente-cloudron
    
  2. Download the Cloudron CLI:

    npm install -g cloudron
    
  3. Build the app:

    cloudron build
    
  4. Install the app:

    cloudron install --app ente.yourdomain.com
    

Option 2: Install from the Cloudron App Store

Once this app is accepted into the Cloudron App Store, you can install it directly:

  1. Go to your Cloudron dashboard
  2. Click "App Store"
  3. Search for "Ente"
  4. Click "Install"

Configuration

The app is configured automatically using Cloudron's environment variables for:

  • PostgreSQL database connection
  • SMTP mail service
  • App origin URL

Cloudron Admin Notes

After installing on Cloudron remember to:

  1. Open the File Manager for the app, edit /app/data/config/s3.env with your object storage endpoint/keys, and restart the app. If you are using Cloudflare R2 or another S3-compatible service, configure the buckets CORS policy to allow the Ente frontends (e.g. https://ente.due.ren, https://accounts.due.ren, https://cast.due.ren, etc.) so that cast/slideshow playback can fetch signed URLs directly from storage. Replication requires three buckets: the primary (S3_*), a secondary hot bucket (S3_SECONDARY_*) and a cold bucket (S3_COLD_*). Once all three are configured the package will automatically enable replication on startup (watch /app/data/logs/startup.log for the “replication enabled” log line). See the object storage guide for sample layouts and reliability notes.
  2. When prompted during installation, pick hostnames for the Accounts/Auth/Cast/Albums/Family web apps (they are exposed via Cloudron httpPorts). Ensure matching DNS records exist; Cloudron-managed DNS creates them automatically, otherwise point CNAME/A records such as accounts.<app-domain> at the primary hostname.
  3. To persist tweaks to Museum (for example, seeding super-admin or whitelist entries), create /app/data/config/museum.override.yaml. Its contents are appended to the generated museum/configurations/local.yaml on every start, so you only need to declare the keys you want to override.
    # /app/data/config/museum.override.yaml
    internal:
      super-admins:
        - admin@example.com
    
  4. Use the bundled Ente CLI for admin tasks via cloudron exec --app <location> -- sudo -u cloudron ente --help. On a fresh install run the following once (initialises the CLI config, whitelists your admin, and clears the CLI DB):
    cloudron exec --app ente.cloudron.io -- bash -lc \
      'cat <<EOF >/cli-data/config.yaml
    

endpoint: api: https://ente.cloudron.io/api log: http: false EOF mkdir -p /cli-data/export chown cloudron:cloudron /cli-data /cli-data/config.yaml /cli-data/export cat </app/data/config/museum.override.yaml internal: super-admins: - admin@example.com EOF rm -f /cli-data/ente-cli.db chown cloudron:cloudron /app/data/config/museum.override.yaml'

cloudron restart --app ente.cloudron.io

add your account (respond to prompts with the OTP sent to your email)

cloudron exec --app ente.cloudron.io -- sudo -u cloudron ente account add

Afterwards the usual admin commands work as documented. Example:
```bash
cloudron exec --app ente.cloudron.io -- sudo -u cloudron ente admin list-users --admin-user admin@example.com

The main photos UI continues to live on the hostname you selected during installation.

Usage

Web Client

After installation, you can access the Ente web client at your app's URL. Create the first user and promote them to an administrator using the override file or upstream admin tooling as documented by Ente.

Mobile Apps

You can use the official Ente mobile apps with your self-hosted server:

  1. Download the Ente app from the App Store or Google Play
  2. During login, choose "Custom Server"
  3. Enter your Cloudron app URL (e.g., https://ente.yourdomain.com)

Updating

To update to a newer version:

cloudron update --app ente.yourdomain.com

License

This Cloudron package is licensed under the same license as Ente (Apache 2.0).

Description
No description provided
Readme 11 MiB
Languages
Shell 77.1%
JavaScript 14.5%
Dockerfile 6.8%
HTML 1.6%