MENU

Documentation

1. About

Emit Cloud is a private self-hosted cloud storage that syncs files across all your devices.

Primary features:

  • Security: No one has access to your files other than you. Emit Cloud is self-hosted software and runs entirely on your own server(s). Files stored on the server can be encrypted or not.
  • Access: Emit Cloud is accessible with mobile apps, desktop apps, a web browser and soon WebDAV and SFTP.
  • Synchronization: Our desktop file synchronization apps are available for all major desktop platforms: Windows, OSX and Linux.
  • Backup/Replication: Emit Cloud can act as a backup storage for your team. No more worries about losing your files or data. It also allows automatic file replication for disaster recovery.
  • Support: f there will be any questions, our product team will be always available for professional support.

Emit Cloud web interface features:

  • Drag & drop file uploads.
  • Built-in filters for fast access: favorites, documents, music, pictures.
  • Rename, move, delete, download files/folders.
  • Share files between user.
  • Create public files or folders, with optional password
  • Direct audio and video playback
  • Image gallery.
  • File revisions.
  • File recovery from trash.
  • Antivirus support (coming soon).

2. INSTALL EmitCloud SERVER

2.1 Download and run EmitCloud

2.1.1 Download

2.1.2 Extract

On OSX double click on downloaded file or decompress with

tar -zxvf emitcloud*.tar.gz

On Ubuntu/Debian open terminal and move into the directory where you downloaded the package above (*.deb package) and run:

sudo dpkg -i emitcloud*.deb

You may have to install imagemagick package as well: sudo apt-get install imagemagick

On Windows, decompress downloaded zip file.

2.1.3 Start server

By default EmitCloud is started as single node and runs on host 127.0.0.1. If you want to change current configuration, details about that can be found under section Configuration. If you have enterprise license, you should import it before starting server, instructions on that can be found under section Import license.

To start server go to the extracted folder.

cd emitcloud-*

and enter

./bin/emitcloud start

On Windows If you want to run EmitCloud as a Windows service right-click on file:

Start - service.bat

and select Run as administrator. Or if you want to run in interactive mode then double-click file:

Start - console.bat

2.1.4 Stop server

To stop server you should enter

./bin/emitcloud stop

2. INSTALL EmitCloud SERVER

2.2 Initialize EmitCloud

2.2.1 Start server

To import licence, you should copy your license file (licence.bin) to directory

emitcloud-*/etc

or if you are in linux

/etc/emitcloud

If you have already started and initialized server, then you should proceed to Update license, if not, go ahead and start EmitCloud.

2.2.2 Initialize server

To initialize the server, just enter

OSX:

./bin/emitctrl init

Linux:

emitctrl init

If you want to see all the available actions, then enter

OSX:

./bin/emitctrl

Linux:

emitctrl

On Windows to initialize server, double-click file:

emitctrl.bat

This will display a list of commands supported by utility emitctrl.

 

2.2.3 Update licence

If you update license or add it after the server was already started, then enter

OSX:

./bin/emitctrl ul

Linux:

emitctrl ul

You should see something like

License found: [license info]
Licence is valid.
Confirm change? (Y/N):

After you input y, new license is used.

 

2. INSTALL EmitCloud SERVER

2.3 Manage user profiles

User profiles can be set for each individual user, when you create them you need to specify user profile name, quota and if profile should be used as default.

2.3.1 Create new user profileUpdate exsisting user profile

To create a new user profile enter

OSX:

./bin/emitctrl ap

Linux:

emitctrl ap

You will be prompted for name, quota and if it is default profile, when you are done, it should look something like this

Profile name: sales
Quota (in GB): 9
Default profile (Y/N): n

When ok is displayed, user profile was successfully created.

 

2.3.2 Update exsisting user profile

When one of user profiles needs an update, you can change them by entering

OSX:

./bin/emitctrl up

Linux:

emitctrl up

You are then prompted for information. It should look something like this:

Existing profile name: sales
New profile name (leave empty for old name): it
New quota (in GB, leave empty for old quota): 10
Default profile (Y/N): n

When OK is displayed, user profile is successfully updated.

 

2.3.3 List all user profiles

To see all profiles you have already created, enter

OSX:

./bin/emitctrl up

Linux:

emitctrl up

You should see something like

All user profiles:
"Default" [default]
"it"

that displays names of all user profiles you have created.

 

2. INSTALL EmitCloud SERVER

2.4 Manage users

2.4.1 Add user

To add new user enter

OSX:

./bin/emitctrl au

Linux:

emitctrl au

You should see something like this

Username: test
Password: test
Profile (leave empty for default profile): it

after ok is displayed, new user was successfully added.

 

2.4.2 Update existing users profile

To update user profile for existing user, enter

OSX:

./bin/emitctrl cup

Linux:

emitctrl cup

after you input username and profile name, you should see something like this

Username: test
Profile: it

after ok is displayed, users profile was successfully updated.

 

2.4.3 Delete existing user

To delete existing user, enter

OSX:

./bin/emitctrl du

Linux:

emitctrl du

after you input username of user you want to delete, you should see something like this

Username: test
Warning all user data will be lostConfirm change? (Y/N): y

to confirm changes enter y, ok is displayed and user was successfully deleted.

 

2.4.4 Change user password

To change users password, enter

OSX:

./bin/emitctrl rp

Linux:

emitctrl rp

after you input username and new password of user that needs password reset, the password was successfully changed.

 

2.4.5 List all users

To see all users, that are currently created on your server, simply enter

OSX:

./bin/emitctrl lu

Linux:

emitctrl lu

this will list all user names and their ids.

 

2. INSTALL EmitCloud SERVER

2.5 Updates

2.5.1 Check for updates

To check for updates to EmitCloud server call

OSX:

./bin/emitctrl cu

Linux:

emitctrl cu

2.5.2 Update config

To update config call

OSX:

./bin/emitctrl update

Linux:

emitctrl update

2.5.3 Get version

To see which version of our EmitCloud server you are using simply enter

OSX:

./bin/emitctrl v

Linux:

emitctrl v

you should see something like

EmitCloud v*.*

 

3. Configuration

Emit Cloud configuration files

app.config: where to store data
ecloud.yaml: global settings for Emit Cloud
fs.yaml: contains paths and their maximum capacity in GB
nodes.yaml: list of all nodes

3.1 ecloud.yaml

This file contains settings, which target all nodes that are listed under the second section in file "nodes.yaml".

How long files or folders stay in trash before they are deleted, units can be: days (d), hours (h), minutes (m).

trash: 48h

URL used to access Emit Cloud. It is highly recommended to replace this address with your actual IP or Host name.

default_address: http://127.0.0.1:7000

What http port to listen on.

http_port: 7000

HTTPS port and certificates if used.

https:
- port: 8000
- cacert: etc/emitcloud.crt
- cert: etc/emitcloud.crt
- key: etc/emitcloud.key

Here we can define which language we want to use, supported languages are: sl-SI, en-US, de-DE.

language: "en-US”

We can also set theme, it can be light or dark.

skin: "light"

If you want you can also change the name of default user folder.

rootfolder: Emit Cloud

Here we can change some optional cld_fs settings, num_replicas: how many servers file is replicated, encryption: parameters for file encryption if available.

cld_fs:
num_replicas: 1
encryption type: basic

Define if you want to use stateless request proxies in front of the actual server cluster. Each proxy needs an internal and external address. External is what clients talk to, internal address is what state servers talk to.

dmz_proxies:
external: http://127.0.0.1:7000
internal: http://127.0.0.1:7000

Here we can define a maximum limit to public folders size. Units can be: megabytes (M), gigabytes (G) and terrabytes (T).

max_public_folder_size: 1G

Define mail settings, like who to use as sender, which server, hostname and port to use and the username and password from account.

sender: youremail@example.com
smtp_server: smtp.example.com
smtp_hostname: example.com #optional
smtp_port: 25 #optional
smtp_username: youremail@example.com #optional
smtp_password: Password #optional
smtp_no_mx_lookups: false #optional
smtp_ssl: false #optional

 

3.2 nodes.yaml

Nodes file is split into two sections. First section lists all available servers, second section organizes those servers into groups. This way you can manually organize nodes across different availability zones per cluster.

Nodes:

name: single_node 
address: 127.0.0.1
pubip: 127.0.0.1:7000

Groups:

name: actordb 
nodes: [single_node]
type: cluster

name: code nodes:
[single_node]

name: cld_fs
nodes: [single_node]
<< Previous Next >>