Git Product home page Git Product logo

serverless-components / knative Goto Github PK

View Code? Open in Web Editor NEW
8.0 5.0 4.0 85 KB

Deploy and manage containerized applications on Knative's serverless infrastructure easily, cheaply and scale massively.

Home Page: https://serverless.com/components

JavaScript 86.41% Dockerfile 7.77% Perl 1.34% Go 1.13% Java 3.34%
serverless serverless-framework serverless-components express serverless-express serverless-applications knative knative-serving kubernetes k8s

knative's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

knative's Issues

Allow mode to be configured

The mode (i.e. whether deploying on pure Kubernetes or on OpenShift) is auto-detected but it would be nice to pin the mode as on OpenShift both modes can be used when running with admin permission (as an admin is allowed to create privileged containers). This could go into serverless.yml or .env

Pickup authentication from a local "~/.kube/config"

In the Kubernetes world, it is an established convention that tooling picks up the cluster connection information from "~/.kubec/config". This works for Kubernetes & OpenShift.

I suggest to do the same for this component, so that a user does not have to replicate this information in .env.

Better error messages

While working on this component, the error message when some interaction with the cluster goes wrong is not informative. It just says "HTTP error" but the error itself contains more information in the response body. That should be presented to the user to help in troubleshooting.

Why is package.json required in the "src/" ?

Every example requires a package.json in the src/ directory, otherwise, the serverless framework throws an error, even when this package.json is not needed at all.

For non-node projects, package.json should not be required. See the non-node examples' package.json, they are only kind of dummies.

Simplify Kubernetes mode deployment

The deployment for the Kubernetes mode is quite involved with a lot of moving parts (upload pods, persistent volumes, ..).

This can be drastically simplified with a technique described in https://github.com/rhuss/buildah-poc which uses an init-container for receiving the source code. This PoC uses buildah but could equally use Kaniko as well. The benefit of this approach are less things that can go wrong and that need to be cleaned up.

Recreate CM/Secret with Docker creds everytime afresh

Currently, an existing config map is reused for the Docker credentials used in Kubernetes mode when pushing to the registry. However, this fails when the user changes her configuration in .env after the first run. I recommend to recreate the configmap (or secret, but see #8 ) for every run.

Allow port be configurable

For now, it is assumed that the port is hardcoded to 8080, but it is maybe a good idea to allow this to be configured and then picked up when the Knative service is created.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.