Setup
SimpleDMS can be installed on all operating systems via Docker. However, officially it gets only tested on Linux. Native builds for other operating systems should be possible, but may need some adjustments.
System Requirements
- S3 Storage for storing files
- Apache Tika for OCR
- Mailserver or mailbox for sending transactional mails
If you don't have S3 Storage or don't want to use it, you can store the files on the local file system by using the Versity S3 Gateway.
Apache Tika can run in a Docker container and Mailpit can provide a mailbox for local single-user testing.
Docker Images
The Docker images are available on GitHub and DockerHub. Currently the images are distributed on both platforms, but this could change in the future. If in doubt, use the GitHub Registry for the moment.
There are three tags available: stable, unstable and latest. For production, you should always use stable. latest always points to the latest build and unstable is intended for development and testing.
Paid distribution channels for versions with long-term support (LTS) are available on request.
Encryption
Please note that all files are encrypted by default. Two age encryption keys are generated during the app initialization. The main key in the main database and a tenant key encrypted with the main key in the tenant database.
The main key can be protected with a passphrase in the app on the dashboard by the admin. If you do so, the app has to be unlocked on every startup. You can use the unlocker to do so.
Please make sure you backup the encryption keys carefully. Without the encryption keys, you can loose access to your files.
Disable File Encryption
If you want to disable file encryption, you can set the environment variable SIMPLEDMS_DISABLE_FILE_ENCRYPTION to true. This must be done before the initial setup of the app. Changing the value later could lead to data lass.
Configuration
The initial configuration is done via environment variables. During the initialization of the app, most values are saved in the database and can later be modified directly in the app.
You can find an sample .env file in the main repository on GitHub.
Docker Compose
The easiest way to run SimpleDMS is with Docker Compose. You can use the sample compose file in the main repository as base for your setup. It contains Tika and Versity Gateway as a service.
With the Versity Gateway your files are stored in a Docker volume. With a bind mount you can also configure it the store the files directly on your file system.
You can use the sample compose file together with the sample .env file and then spin up everything with docker compose up -d or docker-compose up -d for older Docker versions that don't include Compose yet.
If you run SimpleDMS locally, you might want to change the port.
Initialization
Once your started SimpleDMS, it will initialize itself and create an account as well as a tenant with the defined environmental variables.
A mail with the temporary password for the admin account will be send to the email address defined as SIMPLEDMS_INITIAL_ACCOUNT_EMAIL. You have to change the password after the first login as it will expire otherwise.
First Steps
When you are logged in, you can create additional users or follow the First Steps guide.