This approach is not recommended
As of Dec 2018, the Codenvy service appears to no longer be supported.
The Codenvy Service provides a cloud-hosted instance of the Eclipse Che editor and and a cloud hosted service for running Docker containers.
The service has many compelling features and some limitations. Customer support is non-existent even for paid accounts.
Codenvy RAM Usage
Codenvy provides a free tier account that uses up to 3G of RAM.
This is sufficient to run a small DSpace instance.
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.
The workspace properties panel will expose a public URL for the tomcat instance.
Note about the dspace/tomcat container
The tomcat instance (container named dspace) cannot be stopped or restarted. If you wish to reload a webapp, you should modify the webapp web.xml file in /dspace/webapps/*/WEB-INF/web.xml
Copy Files between Containers with SSH
The following link explains how to use SSH keys to move data between containers or from your desktop to one of the containers.
Utility Script for Codenvy
The following utility script will perform some of the special overrides that we have configured within our dspace compose files.
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
The syntax is a subset of what is available to docker-compose. The flattening of the YAML makes it difficult to edit.
Codenvy provides editing tools to add "machines" to a "stack configuration".
Explicitly create a "server" for the container port to expose with a public URL.
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.