Simple inotify file upload Alfresco connector

Name Last Update
app Loading commit data...
docs Loading commit data...
test Loading commit data...
var Loading commit data...
.dockerignore Loading commit data...
.gitignore Loading commit data...
Dockerfile Loading commit data...
Makefile Loading commit data... Loading commit data...
package.json Loading commit data...

Alfresco Connector





  • For production you don't need any special external services, just Docker and Alfresco


Getting started

Install project dependencies

Just run these commands to setup all dependencies:

# Install local needed packages
$ make install

Start the development environment

To start the application for development run these commands.

# Start the application
$ make start


This application is able to be deployed with the help of docker. The next sections will help you building a shipable image of the app.

Quick Start

# Run the container
$ docker run -d \
    -e 'ALFRESCO_API_URL=' \
    -e 'ALFRESCO_UPLOAD_DESTINATION=workspace://SpacesStore/6eaff2f4-d419-4e80-bf71-bbcd115715e3' \
    -v '/host/path/input:/app/var/input' \

Available Configuration Parameters

  • CONNECTOR_REMOVE_AFTER_UPLOAD: Remove the input file after upload. Defaults to true.
  • ALFRESCO_API_URL: Alfresco application URL. Defaults to http://localhost:8080/alfresco.
  • ALFRESCO_API_USERNAME: Alfresco application username. Defaults to admin.
  • ALFRESCO_API_PASSWORD: Alfresco application password. Defaults to admin.
  • ALFRESCO_UPLOAD_DESTINATION: Alfresco destination folder. Defaults to workspace://SpacesStore/UUID.
  • ALFRESCO_UPLOAD_DESCRIPTION: File description for any upload. Defaults to Uploaded by Alfresco Connector.

Data Volumes

In order to kick off a docker container you need to specify data volumes. These data volumes should be host bind mounts for this application, but if you like to store outputs on a docker container volume its fine, too. Anyways the following examples are host bind mounts.

The watched input path for the daemon inside the container is /app/var/input. This directory needs to be mounted. See the Quick Start section above.


# Build the container
$ make build-image

# Start the builded container (quickstart)
$ make start-image

# Stop the container
$ make stop-image

# Purge the build - so you could start over with
# another build
$ make clean-image

# See logs for the running container
$ make image-logs

# Start a bash session on the builded container for debugging.
# This command need **clean** or **stop** like the normal **start**.
$ make start-bash-image