Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Code in the cloud with Eclipse Che and Docker

276 views

Published on

Code in the cloud with Eclipse Che and Docker

Published in: Software
  • Be the first to comment

  • Be the first to like this

Code in the cloud with Eclipse Che and Docker

  1. 1. Eclipse Con EU 2016 - 25th October Florent Benoit (@florentbenoit) - Codenvy Stevan Le Meur (@stevanLM) - Codenvy #eclipseche Code in the cloud with Eclipse Che and Docker
  2. 2. Agenda Introduction to Eclipse Che Live Demo Workspace Portability A Workspace when you Need It!
  3. 3. The Developer Environment Configuration Problem
  4. 4. Working on multiple projects, technologies
  5. 5. Working in teams with style... All differents - but all goods
  6. 6. Documentation, Scripts ? READ THE SOURCE LUKE !!
  7. 7. Manual, Error Prone and - in hours, days, weeks?
  8. 8. Why can’t we have anyone, at anytime be able to contribute to a project without installing software?
  9. 9. Open source <> community
  10. 10. Agile development feels more natural
  11. 11. Iterate in-the-moment with users
  12. 12. What is needed to make a contribution? IDE Project Files Runtimes
  13. 13. Configuration Workspaces include projects and config IDE RuntimesProject Files Workspace Today
  14. 14. Redefine the workspace IDE RuntimesProject Files
  15. 15. Eclipse Che is an open source project to make workspaces universal.
  16. 16. Runtimes Inside Collaborative Programmable Versionable Extensible Universal workspace
  17. 17. Workspaces bring their own runtimes Machine runtime defined by Dockerfile or Composefile
  18. 18. Projects are mounted into the runtimes Projects rely on workspace runtimes
  19. 19. Workspaces define commands mvn clean install start mysql deploy project Commands are executed as processes in workspace runtimes
  20. 20. Workspaces provide their own browser IDE
  21. 21. Desktop IDEs can connect over SSH
  22. 22. Workspaces are hosted in Che’s server
  23. 23. Eclipse Che bring its own browser IDE to provide new developer experience
  24. 24. Runtime Inside Collaborative Programmable Versionable Extensible Universal workspace
  25. 25. Workspaces are shareable
  26. 26. Workspaces are portable
  27. 27. Live Demo: Introduction to Eclipse Che 1. Terminal 2. Editor 3. Java intellisense 4. Commands 5. Debug
  28. 28. Runtime Inside Collaborative Programmable Versionable Extensible Universal workspace
  29. 29. Swagger!
  30. 30. Runtime Inside Collaborative Programmable Versionable Extensible Universal workspace
  31. 31. What happens if your workspace contains runtimes identical to those in production? Development Production
  32. 32. Runtime Inside Collaborative Programmable Versionable Extensible Universal workspace
  33. 33. Growing the base of plug-ins...
  34. 34. Language Server Protocol (LSP) PHP C# C++ PowerShell R XText Interface to connect language analysis into any development tool
  35. 35. Runtimes Inside Collaborative Programmable Versionable Extensible Universal workspace
  36. 36. Reproducible and portable developer workspaces
  37. 37. 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
  38. 38. Live Demo: Che dir
  39. 39. 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"
  40. 40. Load or create new workspace Securely onboard developer http://url/factory?repo=a_project
  41. 41. The dream realized Developer Workspace
  42. 42. Open source project Badging Developer Workspace
  43. 43. JIRA integration
  44. 44. Jenkins integration
  45. 45. Get started with Eclipse Che Sources github.com/eclipse/che Dev List che-dev@eclipse.org IRC #eclipseche Gitter gitter.im/eclipse/che
  46. 46. 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
  47. 47. The cloud workspace virtual event. Tuesday, November 15, 2016 at 11:00am EST https://www.eclipse.org/che/checonf/
  48. 48. And of course... BETA eclipse.org/che Getting started guides Downloads Documentations Contribution guide
  49. 49. Questions ?
  50. 50. Thank you

×