Cellery Distribution - Dockerfiles - API Manager

Docker files for Cellery Control Plane API Manager

License

License

Categories

Categories

Docker Container Virtualization Tools Distribution Build Tools
GroupId

GroupId

io.cellery.distribution
ArtifactId

ArtifactId

io.cellery.distribution.docker.global-apim
Last Version

Last Version

0.4.0
Release Date

Release Date

Type

Type

pom
Description

Description

Cellery Distribution - Dockerfiles - API Manager
Docker files for Cellery Control Plane API Manager
Project Organization

Project Organization

WSO2

Download io.cellery.distribution.docker.global-apim

How to add to project

<!-- https://jarcasting.com/artifacts/io.cellery.distribution/io.cellery.distribution.docker.global-apim/ -->
<dependency>
    <groupId>io.cellery.distribution</groupId>
    <artifactId>io.cellery.distribution.docker.global-apim</artifactId>
    <version>0.4.0</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/io.cellery.distribution/io.cellery.distribution.docker.global-apim/
implementation 'io.cellery.distribution:io.cellery.distribution.docker.global-apim:0.4.0'
// https://jarcasting.com/artifacts/io.cellery.distribution/io.cellery.distribution.docker.global-apim/
implementation ("io.cellery.distribution:io.cellery.distribution.docker.global-apim:0.4.0")
'io.cellery.distribution:io.cellery.distribution.docker.global-apim:pom:0.4.0'
<dependency org="io.cellery.distribution" name="io.cellery.distribution.docker.global-apim" rev="0.4.0">
  <artifact name="io.cellery.distribution.docker.global-apim" type="pom" />
</dependency>
@Grapes(
@Grab(group='io.cellery.distribution', module='io.cellery.distribution.docker.global-apim', version='0.4.0')
)
libraryDependencies += "io.cellery.distribution" % "io.cellery.distribution.docker.global-apim" % "0.4.0"
[io.cellery.distribution/io.cellery.distribution.docker.global-apim "0.4.0"]

Dependencies

compile (15)

Group / Artifact Type Version
io.cellery.security : io.cellery.security.extensions jar 0.4.0
io.cellery.security : io.cellery.security.sts.endpoint.core jar 0.4.0
io.cellery.security : io.cellery.security.post.idp.init jar 0.4.0
io.cellery.security : io.cellery.security.token.endpoint war 0.4.0
io.cellery.observability : io.cellery.observability.tracing.synapse.handler jar 0.4.0
io.opentracing : opentracing-api jar 0.31.0
io.opentracing : opentracing-util jar 0.31.0
io.zipkin.brave : brave jar 4.17.1
io.opentracing.brave : brave-opentracing jar 0.29.0
io.zipkin.zipkin2 : zipkin jar 2.11.6
io.zipkin.reporter2 : zipkin-reporter jar 2.5.0
io.zipkin.reporter2 : zipkin-sender-urlconnection jar 2.5.0
io.zipkin.reporter2 : zipkin-sender-okhttp3 jar 2.5.0
com.squareup.okhttp3 : okhttp jar 3.11.0
com.squareup.okio : okio jar 1.14.0

Project Modules

There are no modules declared in this project.

Distribution

Build Status GitHub (pre-)release GitHub (Pre-)Release Date GitHub last commit License

Note: If you just wish to get started with trying out Cellery, you can start your journey at wso2-cellery/sdk repository.

Cellery distribution repository contains all the materials required to build cellery runtime. This includes all the kubernetes artifacts generated from other repositories as well. Also, this repository contains source and dockerfiles that's being used to initialize and run the Cell Gateway.

Setting up Cellery runtime

If you simply want to deploy Cellery runtime, using Cellery SDK would be easier approach for you. However if you you are looking for advanced configerations you can continue with this repositary. You can use cellery-deploy.sh to install Cellery runtime in a Linux box or in Google Cloud GKE.

Deploy Cellery with kubeadm K8s provider

You can setup the distribution in the kubernetes setup. If you trying out in the developer environment, then you can also install the kubernetes with kubeadm locally by following below steps.

  1. Run swapoff -a this will immediately disable swap

  2. Remove any swap entry from /etc/fstab

$ curl <cellery-deploy script url> | bash -s -- <k8s provider>
$ curl https://raw.githubusercontent.com/wso2-cellery/distribution/master/installer/scripts/cellery-runtime-deployer/cellery-deploy.sh | bash -s -- kubeadm

Google Cloud Platform

If you want to deploy Cellery runtime in Google Cloud Platform you can run the following script.

$ curl <cellery deploy script url> | bash -s -- <K8s provider> <GCP Project ID> <GCP Compute Zone>
$ curl https://raw.githubusercontent.com/wso2-cellery/distribution/master/installer/scripts/cellery-runtime-deployer/cellery-deploy.sh | bash -s -- <K8s provider> <GCP Project ID> <GCP Compute>

Cleaning up Cellery runtime

Simply run following command to cleanup local kubeadm cluster

$ cat cellery-cleanup.sh | bash -s -- kubeadm

Contribute to Cellery Distribution

The Cellery Team is pleased to welcome all contributors willing to join with us in our journey.

Build from Source

Prerequisites

To get started with building Cellery Distribution, the following are required.

  • Docker
  • Git
  • JDK 1.8+ or higher
  • Maven
  • GNU Make 4.1+

Steps to build

This repository only contains source of cell gateway for now..You can build cell gateway using Maven and you can build Docker images manually as well. However, in the same way all our repositories are structured, a proper build can be triggered through Make.

To get started, first clone the repository. If you wish to build for a particular tag, please checkout the required tag. Then run the following command from the root of the project.

make all

This will build all the modules in the repository and docker images using the build artifacts. Afterwards, if you wish to push the docker images to the repository, run the following command.

Note: You need to login to Docker before running this command.

make docker-push

Issue Management

Cellery Distribution issue management is mainly handled through GitHub Issues. Please feel free to open an issue about any question, bug report or feature request that you have in mind. (If you are unclear about where your issue should belong to, you can create it in Cellery SDK.)

We also welcome any external contributors who are willing to contribute. You can join a conversation in any existing issue and even send PRs to contribute. However, we suggest to start by joining into the conversations and learning about Cellery Distribution as the first step.

Each issue we track has a variety of metadata which you can select with labels:

  • Type: This represents the kind of the reported issues such as Bug, New Feature, Improvement, etc.
  • Priority: This represents the importance of the issue, and it can be scaled from High to Normal.
  • Severity: This represents the impact of the issue in your current system. If the issue is blocking your system, and it’s having an catastrophic effect, then you can mark is ‘Blocker’. The ‘Blocker’ issues are given high priority as well when we are resolving the issues.

Apart from the information provided above, the issue template added to the repository will guide you to describe the issue in detail so that we can analyze and work on the resolution towards it. We would appreciate if you could fill most of the fields as possible when you are creating the issue. We will evaluate issues based on the provided details and labels, and will allocate them to the Milestones.

Versions

Version
0.4.0
0.1.0