This commit is contained in:
Alexandre
2025-08-01 22:42:05 +02:00
parent f4a1f85fd1
commit 2e29601a2e
2 changed files with 126 additions and 56 deletions

View File

@@ -23,14 +23,84 @@ _Thanks to everyone having starred my repo! To star it click on the image below,
## About
Joplin Server is a free, open source note taking and to-do Sync application, which can handle a large number of notes organised into notebooks.
With this server you can sync all your notes over all your devices.
[Joplin Server](https://github.com/laurent22/joplin) is a free, open source note taking and to-do synchronization application, which can handle a large number of notes organized into notebooks. With this server you can sync all your notes across all your devices. Joplin supports end-to-end encryption, markdown editing, web clipper extensions, and synchronization with various cloud services.
This addon is based on the [docker image](https://hub.docker.com/r/etechonomy/joplin-server) from etechonomy.
Thanks to @poudenes for helping with the development!
Project homepage : https://github.com/laurent22/joplin
## Configuration
Based on the docker image : https://hub.docker.com/r/etechonomy/joplin-server
Webui can be found at `<your-ip>:22300`.
### Options
| Option | Type | Default | Description |
|--------|------|---------|-------------|
| `APP_BASE_URL` | str | `http://your_domain:port` | Base public URL where the service will be running |
| `data_location` | str | `/config/addons_config/joplin` | Path where Joplin data is stored |
| `DB_CLIENT` | str | | Database client type (e.g., `pg` for PostgreSQL) |
| `POSTGRES_HOST` | str | | PostgreSQL server hostname |
| `POSTGRES_PORT` | int | | PostgreSQL server port |
| `POSTGRES_DATABASE` | str | | PostgreSQL database name |
| `POSTGRES_USER` | str | | PostgreSQL username |
| `POSTGRES_PASSWORD` | str | | PostgreSQL password |
| `MAILER_ENABLED` | int | | Enable email service (1=true, 0=false) |
| `MAILER_HOST` | str | | SMTP server hostname |
| `MAILER_PORT` | int | | SMTP server port |
| `MAILER_SECURITY` | str | | SMTP security (none, tls, starttls) |
| `MAILER_AUTH_USER` | str | | SMTP authentication username |
| `MAILER_AUTH_PASSWORD` | str | | SMTP authentication password |
| `MAILER_NOREPLY_NAME` | str | | Email sender name |
| `MAILER_NOREPLY_EMAIL` | str | | Email sender address |
### Example Configuration
```yaml
APP_BASE_URL: "http://192.168.1.100:22300"
data_location: "/config/addons_config/joplin"
DB_CLIENT: "pg"
POSTGRES_HOST: "core-mariadb"
POSTGRES_PORT: 3306
POSTGRES_DATABASE: "joplin"
POSTGRES_USER: "joplin"
POSTGRES_PASSWORD: "secure_password"
MAILER_ENABLED: 1
MAILER_HOST: "smtp.gmail.com"
MAILER_PORT: 587
MAILER_SECURITY: "starttls"
MAILER_AUTH_USER: "your-email@gmail.com"
MAILER_AUTH_PASSWORD: "your-app-password"
MAILER_NOREPLY_NAME: "Joplin Server"
MAILER_NOREPLY_EMAIL: "noreply@yourdomain.com"
```
### Database Setup
Joplin Server uses SQLite by default, but for production use, PostgreSQL is recommended:
1. Install and configure a PostgreSQL addon (e.g., MariaDB addon)
2. Create a database and user for Joplin
3. Configure the PostgreSQL options in the Joplin addon
4. Restart the addon
Make sure the provided database and user exist as the server will not create them automatically.
### Email Configuration
To enable email functionality for user registration and notifications:
1. Configure your SMTP server details
2. Set `MAILER_ENABLED` to `1`
3. Provide authentication credentials
4. Test the configuration by registering a new user
### Custom Scripts and Environment Variables
This addon supports custom scripts and environment variables through the `addon_config` mapping:
- **Custom scripts**: See [Running Custom Scripts in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Running-custom-scripts-in-Addons)
- **Environment variables**: See [Add Environment Variables to your Addon](https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon)
## Installation
@@ -42,44 +112,18 @@ comparison to installing any other Hass.io add-on.
1. Click the `Save` button to store your configuration.
1. Start the add-on.
1. Check the logs of the add-on to see if everything went well.
1. Carefully configure the add-on to your preferences, see the official documentation for for that.
1. Navigate to the web interface to complete the initial setup.
## Configuration
## Setup Steps
Webui can be found at <http://homeassistant:port>
```yaml
APP_BASE_URL: This is the base public URL where the service will be running. For example, if you want it to run from https://example.com/joplin, this is what you should set the URL to. The base URL can include the port.
```
To use an existing PostgresSQL server, set the following variables in the config:
Make sure that the provided database and user exist as the server will not create them.
```yaml
DB_CLIENT=pg
POSTGRES_PASSWORD=joplin
POSTGRES_DATABASE=joplin
POSTGRES_USER=joplin
POSTGRES_PORT=5432
POSTGRES_HOST=localhost
```
To use email service, set the follow variables in the config:
```yaml
1 = true, 0 = false
MAILER_HOST=mail.example.com
MAILER_PORT=995
MAILER_SECURITY=none, tls, starttls
MAILER_AUTH_USER=info@example.com
MAILER_AUTH_PASSWORD=your_password
MAILER_NOREPLY_NAME=from_name
MAILER_NOREPLY_EMAIL=from_email
MAILER_ENABLED=1
```
1. **Initial Setup**: After starting the addon, navigate to the web interface
2. **Create Admin Account**: Create your first admin user account
3. **Configure Synchronization**: Set up your Joplin clients to sync with the server
4. **Optional Database**: Consider switching to PostgreSQL for better performance
5. **Email Service**: Configure email service for user management features
## Support
Create an issue on github
Create an issue on [GitHub](https://github.com/alexbelgium/hassio-addons/issues).
[repository]: https://github.com/alexbelgium/hassio-addons