Code in the cloud with Eclipse Che and Docker
-
Upload
florent-benoit -
Category
Software
-
view
41 -
download
3
Transcript of Code in the cloud with Eclipse Che and Docker
Eclipse Con EU 2016 - 25th October
Florent Benoit (@florentbenoit) - CodenvyStevan Le Meur (@stevanLM) - Codenvy
#eclipseche
Code in the cloud with Eclipse Che and Docker
Agenda
Introduction to Eclipse Che
Live Demo
Workspace Portability
A Workspace when you Need It!
The Developer Environment Configuration Problem
Working on multiple projects, technologies
Working in teams with style...
All differents - but all goods
Documentation, Scripts ?
READ THE SOURCE LUKE !!
Manual, Error Prone and - in hours, days, weeks?
Why can’t we have anyone, at anytime be able to contribute to a project without installing software?
Open source <> community
Agile development feels more natural
Iterate in-the-moment with users
What is needed to make a contribution?
IDE Project Files Runtimes
Configuration
Workspaces include projects and config
IDE RuntimesProject Files
WorkspaceToday
Redefine the workspace
IDE RuntimesProject Files
Eclipse Che is an open source project to make workspaces universal.
Runtimes InsideCollaborativeProgrammableVersionableExtensible
Universal workspace
Workspaces bring their own runtimes
Machine runtime defined by Dockerfileor Composefile
Projects are mounted into the runtimes
Projects rely on workspace runtimes
Workspaces define commands
mvn clean install
start mysql
deploy project
Commands are executed as processes in workspace runtimes
Workspaces provide their own browser IDE
Desktop IDEs can connect over SSH
Workspaces are hosted in Che’s server
Eclipse Che bring its own browser IDEto provide new developer experience
Runtime InsideCollaborativeProgrammableVersionableExtensible
Universal workspace
Workspaces are shareable
Workspaces are portable
Live Demo: Introduction to Eclipse Che
1. Terminal2. Editor3. Java intellisense4. Commands5. Debug
Runtime InsideCollaborativeProgrammableVersionableExtensible
Universal workspace
Swagger!
Runtime InsideCollaborativeProgrammableVersionableExtensible
Universal workspace
What happens if your workspace contains runtimes identical to those in production?
Development
Production
Runtime InsideCollaborativeProgrammableVersionableExtensible
Universal workspace
Growing the base of plug-ins...
Language Server Protocol (LSP)
PHPC#C++
PowerShellR
XText
Interface to connect language analysis into any development tool
Runtimes InsideCollaborativeProgrammableVersionableExtensible
Universal workspace
Reproducible and portable developer workspaces
Che dir: reproducible and portable developer workspaces
SETUP- Docker- Eclipse Che CLI
CLONE
WORK
$ git clone https//github.com/che-samples/web-java-spring-petclinic
$ che dir up
Live Demo: Che dir
Che dir: reproducible and portable developer workspaces
# Defines name of the workspace
workspace.name = “happy”
# Define the Docker image to use to power the workspace's runtime
# This must conform to a Che recipe type:
workspace.runtime.image.location="codenvy/alpine_jdk8"
# Defines memory allocated to the workspace's runtime
workspace.ram = 2048
# Commands are processes that users execute in the IDE.
# Commands will appear in the drop down on the tool bar.
workspace.commands[0].name = "my-first-command"
workspace.commands[0].type = "mvn"
workspace.commands[0].commandLine = "mvn clean install -f ${current.project.path}"
workspace.commands[0].attributes.previewUrl = "http://${server.port.8080}/${current.project.relpath}"
# A command that will be executed after the workspace is loaded.
# Reference the name of a command defined above.
workspace.postload.actions[0].name="my-second-command"
Load or create new workspace
Securely onboard developer
http://url/factory?repo=a_project
The dream realized
Developer Workspace
Open source project Badging
Developer Workspace
JIRA integration
Jenkins integration
Get started with Eclipse Che
Sources github.com/eclipse/che
Dev List [email protected]
IRC #eclipseche
Gittergitter.im/eclipse/che
Workshop: Extending Eclipse Che to build custom cloud IDEs Tuesday, 9:00 AM
Code in the Cloud with Eclipse Che & Docker Tuesday, 2:45 PM
Introduction to Eclipse Che extensibility model Wednesday, 11:00 AM
Build an Extension for Eclipse Che - An Experience Report Thursday, 11:00 AM
Sessions
@eclipse_che
Language Server Protocol Explained Wednesday, 4:00 PM
The cloud workspace virtual event.Tuesday, November 15, 2016 at 11:00am EST
https://www.eclipse.org/che/checonf/
And of course...BETA
eclipse.org/che Getting started guides Downloads Documentations Contribution guide
Questions ?
Thank you