Skip to content

Instantly share code, notes, and snippets.

View ramnov's full-sized avatar

Ramkumar Chandrasekaran ramnov

View GitHub Profile
@ramnov
ramnov / kubernetes-mlserver-onebox-dockerfile
Last active September 17, 2018 16:27
Dockerfile to run onebox in Kubernetes cluster
FROM ubuntu:16.04
# Install Machine Learning Server
RUN apt-get -y update \
&& apt-get install -y apt-transport-https wget \
&& echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ xenial main" | tee /etc/apt/sources.list.d/azure-cli.list \
&& wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O /tmp/prod.deb \
&& dpkg -i /tmp/prod.deb \
&& rm -f /tmp/prod.deb \
&& apt-key adv --keyserver packages.microsoft.com --recv-keys 52E16F86FEE04B979B07E28DB02C46DF417A0893 \
@ramnov
ramnov / configure-jwt-cert.py
Created August 17, 2018 23:11
Python script to modify jwtsigningcertificate in Microsoft Machine Learning Server Webnode appsettings.json
#!/usr/bin/python
import sys
import json
from collections import OrderedDict
appSettingsFilePath = "/opt/microsoft/mlserver/9.3.0/o16n/Microsoft.MLServer.WebNode/appsettings.json"
data = json.loads(open(appSettingsFilePath, "r").read().replace("\r\n",""), object_pairs_hook=OrderedDict)
data["Authentication"]["JWTSigningCertificate"]["Enabled"] = True
data["Authentication"]["JWTSigningCertificate"]["StoreName"] = "Root"
@ramnov
ramnov / py-manualtransmission-dockerfile
Created July 26, 2018 23:16
Dockerfile for Manual Transmission Python Web Service
FROM ubuntu:16.04
RUN apt-get -y update \
&& apt-get install -y apt-transport-https wget \
&& echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ xenial main" | tee /etc/apt/sources.list.d/azure-cli.list \
&& wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O /tmp/prod.deb \
&& dpkg -i /tmp/prod.deb \
&& rm -f /tmp/prod.deb \
&& apt-key adv --keyserver packages.microsoft.com --recv-keys 52E16F86FEE04B979B07E28DB02C46DF417A0893 \
&& apt-get -y update \
&& apt-get install -y microsoft-r-open-foreachiterators-3.4.3 \
@ramnov
ramnov / r-manualtransmission-dockerfile
Created July 26, 2018 23:08
Dockerfile for Manual Transmission R Web Service
FROM ubuntu:16.04
RUN apt-get -y update \
&& apt-get install -y apt-transport-https wget \
&& echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ xenial main" | tee /etc/apt/sources.list.d/azure-cli.list \
&& wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O /tmp/prod.deb \
&& dpkg -i /tmp/prod.deb \
&& rm -f /tmp/prod.deb \
&& apt-key adv --keyserver packages.microsoft.com --recv-keys 52E16F86FEE04B979B07E28DB02C46DF417A0893 \
&& apt-get -y update \
&& apt-get install -y microsoft-r-open-foreachiterators-3.4.3 \
@ramnov
ramnov / mlserver-onebox-dockerfile
Created July 26, 2018 22:51
Dockerfile for Machine Learning Server 9.3 Onebox Configuration installed on Ubuntu 16.04
FROM ubuntu:16.04
RUN apt-get -y update \
&& apt-get install -y apt-transport-https wget \
&& echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ xenial main" | tee /etc/apt/sources.list.d/azure-cli.list \
&& wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O /tmp/prod.deb \
&& dpkg -i /tmp/prod.deb \
&& rm -f /tmp/prod.deb \
&& apt-key adv --keyserver packages.microsoft.com --recv-keys 52E16F86FEE04B979B07E28DB02C46DF417A0893 \
&& apt-get -y update \
&& apt-get install -y microsoft-r-open-foreachiterators-3.4.3 \
@ramnov
ramnov / mlserver-dockerfile
Created July 26, 2018 22:12
Dockerfile for Machine Learning Server 9.3 installed on Ubuntu 16.04
FROM ubuntu:16.04
RUN apt-get -y update \
&& apt-get install -y apt-transport-https wget \
&& echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ xenial main" | tee /etc/apt/sources.list.d/azure-cli.list \
&& wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O /tmp/prod.deb \
&& dpkg -i /tmp/prod.deb \
&& rm -f /tmp/prod.deb \
&& apt-key adv --keyserver packages.microsoft.com --recv-keys 52E16F86FEE04B979B07E28DB02C46DF417A0893 \
&& apt-get -y update \
&& apt-get install -y microsoft-r-open-foreachiterators-3.4.3 \
@ramnov
ramnov / GenerateClientFromSwagger.py
Created December 14, 2017 19:58
python script to generate client from swagger file
# ----------------------------------------------------#
# GENERATE CLIENT FROM SWAGGER JSON
# ----------------------------------------------------#
# Generate client in C# using the swagger json file
import urllib, requests, json, ssl, os
service_name = 'ManualTransmissionService'
f = open('manual-transmission-service-swagger.json', "r")
swagger = f.read()
@ramnov
ramnov / ManualTransmission.py
Last active December 14, 2017 19:53
Python code to Publish ManualTransmission Web Service and generate csharp client using swagger
# ----------------------------------------------------#
# STEP 1 : MODEL DEVELOPMENT
# ----------------------------------------------------#
# imports
from microsoftml.datasets.datasets import DataSetMtCars
import pandas as pd
from revoscalepy import rx_lin_mod, rx_predict
# using rx_lin_mod from revoscalepy package, create glm model with `mtcars` dataset
@ramnov
ramnov / ManualTransmission.R
Last active September 29, 2017 19:50
R code to publish web service and create a csharp client
library(mrsdeploy)
carsModel <- glm(formula = am ~ hp + wt, data = mtcars, family = binomial)
manualTransmission <- function(hp, wt) {
newdata <- data.frame(hp = hp, wt = wt)
predict(carsModel, newdata, type = "response")
}
remoteLogin("http://localhost:12800", username = "admin", password = "password", session = FALSE)
api <- publishService(
"ManualTransmissionService",
code = manualTransmission,
@ramnov
ramnov / aadToken.R
Created August 5, 2017 05:47
R script to obtain Azure Active Directory Token
library(httr)
library(jsonlite)
library(curl)
h <- new_handle()
handle_setform(h,
"grant_type"="client_credentials",
"resource"="https://management.core.windows.net/",
"client_id"="<CLIENT ID>",
"client_secret"="<CLIENT SECRET>"
)