Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Warning
titleThis approach is not recommended

As of Dec 2018, the Codenvy service appears to no longer be supported.


Table of Contents

Overview

Info
titleUpdated Resource

See https://dspace-labs.github.io/DSpace-Docker-Images/add-ons/codenvy-scripts/


The Codenvy Service provides a cloud-hosted instance of the Eclipse Che editor and and a cloud hosted service for running Docker containers.

...

The Codenvy IDE (Che) requires at least 3G of RAM to manage the full DSpace Code base.  Therefore, it is impossible to manage code and run DSpace in a free tier workspace.

Try

...

out Codenvy Using this Pre-Built Factory

The following link to a Codenvy factory will build a 3GB workspace running the latest DSpace 6x published Docker Image.

...

https://github.com/DSpace-Labs/DSpace-Docker-Images/blob/codenvy-refactor/add-ons/codenvy-scripts/setupCodenvy.sh

Configuring a Codenvy Workspace Yourself

Create a multi-machine stack that contains the desired images plus add an additional machine (eclipse/ubuntu_jdk8) to run the IDE.


Here is a docker compose configuration that I wish to replicate


Code Block
languageyml
titleDocker Compose Configuration to Port to Codenvy
services:
  dspacedb:
    image: dspace/dspace-postgres-pgcrypto
    volumes:
      - pgdata:/pgdata

  dspace:
    image: "dspace/dspace:dspace-6_x"
    ports:
      - 8080:8080
    volumes:
      - "assetstore:/dspace/assetstore"
      - "solr:/dspace/solr"
    depends_on:
      - dspacedb

The syntax is a subset of what is available to docker-compose. The flattening of the YAML makes it difficult to edit. 

Code Block
languageyml
titleCodenvy Stack Recipe for DSpace
"recipe": {
  "type": "compose",
  "content": "services:\n dev-machine:\n  image: eclipse/ubuntu_jdk8\n dspacedb:\n  image: dspace/dspace-postgres-pgcrypto\n  mem_limit: 536870912\n dspace:\n  image: 'dspace/dspace:dspace-6_x'\n  mem_limit: 2147483648\n",
  "contentType": "application/x-yaml"
},

Codenvy provides editing tools to add "machines" to a "stack configuration".

Image Added

Explicitly create a "server" for the container port to expose with a public URL.

Code Block
languageyml
titleCodenvy "Server" Configuration within a Machine
 "dspace": {
    "attributes": {
      "memoryLimitBytes": "2684354560"
    },
    "servers": {
      "dspace": {
        "properties": {},
        "protocol": "http",
        "port": "8080"
      }
    },

After the workspace starts, the public address for this "server" will be exposed on the workspace configration screen.

See the instructions above for finding this URL.