All Projects → okteto → Okteto

okteto / Okteto

Licence: apache-2.0
Develop your applications directly in your Kubernetes Cluster

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Okteto

Devspace
DevSpace - The Fastest Developer Tool for Kubernetes ⚡ Automate your deployment workflow with DevSpace and develop software directly inside Kubernetes.
Stars: ✭ 2,559 (+32.11%)
Mutual labels:  cloud-native, helm, developer-tools, development
go-getting-started
Develop Go Apps in Kubernetes with Okteto
Stars: ✭ 32 (-98.35%)
Mutual labels:  development, debug, cloud-native, okteto
Takeoff
A rapid development environment using docker for convenience.
Stars: ✭ 271 (-86.01%)
Mutual labels:  hacktoberfest, developer-tools, development
Http Prompt
An interactive command-line HTTP and API testing client built on top of HTTPie featuring autocomplete, syntax highlighting, and more. https://twitter.com/httpie
Stars: ✭ 8,329 (+329.99%)
Mutual labels:  developer-tools, development
Influx Prompt
An interactive command-line InfluxDB cli with auto completion.
Stars: ✭ 42 (-97.83%)
Mutual labels:  developer-tools, development
Laravel Packager
A cli tool for creating Laravel packages
Stars: ✭ 1,049 (-45.84%)
Mutual labels:  hacktoberfest, development
Chromelogger
chrome extension for server side console logging
Stars: ✭ 884 (-54.36%)
Mutual labels:  developer-tools, development
Dev Practice
Practice your skills with these ideas.
Stars: ✭ 1,127 (-41.82%)
Mutual labels:  hacktoberfest, development
Wago
Automate the actions you do after saving code.
Stars: ✭ 60 (-96.9%)
Mutual labels:  developer-tools, development
Multiwatch
Simple task runner on directory changes that doesn't produce tons of logs if everything is OK 👌
Stars: ✭ 74 (-96.18%)
Mutual labels:  developer-tools, development
Pric
Simple zero-config tool to create Private Certificate Authority & issue locally-trusted development server certificates with any domain names you'd like. SSL certificates for development purposes.
Stars: ✭ 87 (-95.51%)
Mutual labels:  developer-tools, development
Programming Notes
Semua catatan tentang teknologi dan development 😎
Stars: ✭ 41 (-97.88%)
Mutual labels:  hacktoberfest, development
Dvc
🦉Data Version Control | Git for Data & Models | ML Experiments Management
Stars: ✭ 9,004 (+364.84%)
Mutual labels:  hacktoberfest, developer-tools
Gdbstub
A simple, dependency-free GDB stub that can be easily dropped in to your project.
Stars: ✭ 56 (-97.11%)
Mutual labels:  development, debug
App Tutorial
Tutorial app which is built in the tutorial
Stars: ✭ 29 (-98.5%)
Mutual labels:  hacktoberfest, development
Kubelabs
Kubernetes - Beginners | Intermediate | Advanced
Stars: ✭ 1,115 (-42.44%)
Mutual labels:  hacktoberfest, helm
Monday
⚡️ A dev tool for microservice developers to run local applications and/or forward others from/to Kubernetes SSH or TCP
Stars: ✭ 1,246 (-35.67%)
Mutual labels:  hacktoberfest, development
Policy Hub Cli
CLI for searching Rego policies
Stars: ✭ 88 (-95.46%)
Mutual labels:  cloud-native, hacktoberfest
Kogito Examples
Kogito examples - Kogito is a cloud-native business automation technology for building cloud-ready business applications.
Stars: ✭ 96 (-95.04%)
Mutual labels:  cloud-native, hacktoberfest
Tidb Operator
TiDB operator creates and manages TiDB clusters running in Kubernetes.
Stars: ✭ 778 (-59.83%)
Mutual labels:  cloud-native, hacktoberfest

Okteto: A Tool to Develop Applications on Kubernetes

CircleCI CII Best Practices GitHub release Apache License 2.0 Total Downloads Chat in Slack

Overview

Kubernetes has made it very easy to deploy applications to the cloud at a higher scale than ever, but the development practices have not evolved at the same speed as application deployment patterns.

Today, most developers try to either run parts of the infrastructure locally or just test these integrations directly in the cluster via CI jobs, or the docker build/redeploy cycle. It works, but this workflow is painful and incredibly slow.

okteto accelerates the development workflow of Kubernetes applications. You write your code locally and okteto detects the changes and instantly updates your Kubernetes applications.

How it works

Okteto allows you to develop inside a container. When you run okteto up your Kubernetes deployment is replaced by a development container that contains your development tools (e.g. maven and jdk, or npm, python, go compiler, debuggers, etc). This development container can be any docker image. The development container inherits the same secrets, configmaps, volumes or any other configuration value of the original Kubernetes deployment.

In addition to that, okteto up will:

  1. Create a bidirectional file synchronization service to keep your changes up to date between your local filesystem and your development container.
  2. Automatic local and remote port forwarding using SSH, so you can access your cluster services via localhost or connect a remote debugger.
  3. Give you an interactive terminal to your development container, so you can build, test, and run your application as you would from a local terminal.

All of this (and more) can be configured via a simple YAML manifest.

The end result is that the remote cluster is seen by your IDE and tools as a local filesystem/environment. You keep writing your code on your local IDE and as soon as you save a file, the change goes to the development container, and your application instantly updates (taking advantage of any hot-reload mechanism you already have). This whole process happens in an instant. No docker images need to be created and no Kubernetes manifests need to be applied to the cluster.

Okteto

Why Okteto

okteto has several advantages when compared to more traditional development approaches:

  • Fast inner loop development: build and run your application using your favorite tools directly from your development container. Native builds are always faster than the docker build/redeploy cycle.
  • Realistic development environment: your development container reuses the same variables, secrets, sidecars, volumes, etc... than your original Kubernetes deployment. Realistic environments eliminate integration issues.
  • Replicability: development containers eliminate the need to install your dependencies locally, everything is pre-configured in your development image.
  • Unlimited resources: get access to the hardware and network of your cluster when developing your application.
  • Deployment independent: okteto decouples deployment from development. You can deploy your application with kubectl, Helm, a serverless framework, or even a CI pipeline and use okteto up to develop it. This is especially useful for cloud-native applications where deployment pipelines are not trivial.
  • Works anywhere: okteto works with any Kubernetes cluster, local or remote. okteto is also available for macOS, Linux, and Windows.

Getting started

All you need to get started is to install the Okteto CLI and have access to a Kubernetes cluster.

You can also use okteto with Okteto Cloud, a Kubernetes Namespace as a Service platform where you can deploy your Kubernetes applications and development containers for free.

Super Quick Start

  • Deploy your application on Kubernetes.
  • Run okteto init from the root of your git repository to inspect your code and generate your Okteto manifest. The Okteto manifest defines your development container.
  • Run okteto up to deploy your development container.

We created a few guides to help you get started with okteto and your favorite programming language.

Useful links

Support and Community

Got questions? Have feedback? Join the conversation in our #okteto Slack channel! If you don't already have a Kubernetes Slack account, sign up here.

Follow @OktetoHQ on Twitter for important announcements.

Roadmap

We use GitHub issues to track our roadmap. A milestone is created every month to track the work scheduled for that time period. Feedback and help are always appreciated!

Contributions

We ❤️ contributions big or small. See our guide on how to get started.

Thanks to all our contributors!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].