Configuring the Amazon S3 plugin

Use the instructions on this page to configure CollectionSpace (version 5.0.2 or greater) to store binaries (images, PDF documents, text files, etc) in an Amazon S3 bucket.

Configure a NEW CollectionSpace Instance - Step-by-step guide

  • Install CollectionSpace by following the instructions at "Installing CollectionSpace".

  • If CollectionSpace is running, shut it down.
  • In the Apache Tomcat directory, edit the file at: cspace/config/services/proto-repo-config.xml by replacing:

<extension target="org.nuxeo.ecm.core.blob.BlobManager" point="configuration">
	<blobprovider name="default">
		<class>org.nuxeo.ecm.core.blob.binary.DefaultBinaryManager</class>
		<property name="path"></property>
		<property name="key"></property>
	</blobprovider>
</extension>

with

<extension target="org.nuxeo.ecm.core.blob.BlobManager" point="configuration">
  <blobprovider name="default">
    <class>org.nuxeo.ecm.core.storage.sql.S3BinaryManager</class>
    <property name="path"></property>
    <property name="key"></property>
	<!--
		You can set the S3 authentication properties here and/or in the {$tomcat}/nuxeo-server/config/s3binarymanager.properties file -but the values here will
		override those set in the 's3binarymanager.properties' file.
	-->
    <property name="bucket">your_s3_bucket_name</property>
    <property name="awsid">your_AWS_ACCESS_KEY_ID</property>
    <property name="awssecret">your_AWS_SECRET_ACCESS_KEY</property>
    <property name="region">us-west-1</property>
	<!--
		Optional S3 properties.
	-->
    <property name="bucket.prefix">myprefix/</property>
    <property name="directdownload">true</property>
    <property name="directdownload.expire">3600</property>
    <property name="cachesize">100MB</property>
    <property name="crypt.keystore.file">/my/keystore.jks</property>
    <property name="crypt.keystore.password">password</property>
    <property name="crypt.key.alias">mykey</property>
    <property name="crypt.key.password">password</property>
    <property name="connection.max">50</property>
    <property name="connection.retry">3</property>
    <property name="connection.timeout">50000</property>
    <property name="socket.timeout">50000</property>
  </blobprovider>
</extension>

Alternative Configuration

If you decide not to set the S3 authentication properties in the Nuxeo "extension" (see XML snippet immediately above), you can set them in a special properties file instead. In the Apache Tomcat directory, edit the file at: nuxeo-server/config/s3binarymanager.properties by adding your Amazon S3 bucket name, credentials, and other S3 properties

nuxeo.s3storage.bucket=BucketName
nuxeo.s3storage.awsid=AWSAccessKeyId
nuxeo.s3storage.awssecret=AWSSecretKey
nuxeo.s3storage.region=AWSRegionCode

 

  • You may need to modify your Amazon S3 bucket settings at https://console.aws.amazon.com/s3.  Select the bucket you're using for CollectionSpace.  Review the "Permissions" settings for your bucket by clicking on the "Properties" button near the top right corner.  For example, you may need to add "Authenticated Users" to your Grantee list.

For additional Amazon S3 settings, follow the instructions at Nuxeo's Amazon S3 Plugin wiki page.

Configure an existing CollectionSpace Instance - Step-by-step guide

  1. Follow all the instructions for configuring a NEW CollectionSpace Instance (see above) except for the last step of restarting CollectionSpace.

  2. Before restarting CollectionSpace, you'll need to migrate your existing binaries by coping them to your Amazon S3 bucket.

    1. The existing binaries will be inside the Apache Tomcat directory at nuxeo-server/data/TENANT_NAME.  For example, for the core/default tenant, the binaries would be here: nuxeo-server/data/default.  And for the Life Sciences tenant, they would be here: nuxeo-server/data/lifesci_domain
    2. Use a tool like Amazon's s3cmd to copy the entire contents of your existing binaries directory to your Amazon S3 bucket.
  3. Finally, restart CollectionSpace.

 

For additional Amazon S3 settings, follow the instructions at Nuxeo's Amazon S3 Plugin wiki page.

Filter by label

There are no items with the selected labels at this time.