Continuous Deployment made easy with GitHub Actions and Heroku

Image for post
Image for post

This article is a short guide on deploying a Shiny app on Heroku. Familiarity with Docker, Shiny and GitHub is presumed. For an introduction to Docker, see Deploying a Shiny Flexdashboard with Docker.

This article was also published on https://www.r-bloggers.com/.

This article will show you

  • How to containerize a Shiny app with Docker
  • How to set up GitHub to automatically deploy to Heroku
  • How to set up a custom domain name for your deployed app

Heroku free tier

Heroku (which I am not affiliated with) is a cloud platform service that offers an intuitive way to deploy and manage enterprise grade web apps. It enables easy auto scaling of your apps, however not on Free (and Hobby) tier we will use here. Apps can be managed via CLI or the Heroku dashboard. …


Learn how to build a robust REST API with Docker and R Plumber.

Image for post
Image for post
The schema of the public live data set on Google Big Query for which we will build an API

This article was also published on https://www.r-bloggers.com/.

This is part three of a multi article series on building and deploying an API robustly with R and Docker that lets you extract live data from Google Big Query. For part one, see Google Big Query with R and for part two, see Live data extraction with Cron and R. For a short introduction into Docker, see part two of the article series about building and deploying a Dashboard, Deploying a Shiny Flexdashboard with Docker.

APIs are a convenient way to access data across devices independently of a programming language. REpresentational State Transfer APIs are the most common type of Web API. REST is a software architecture paradigm which defines a set of uniform and stateless operations. The uniform operations make it simple to define an interface and the statelessness makes it reliable, fast and easy to modify and scale. The commonly used exchange protocol is the HTT Protocol, with its operations GET, HEAD, POST, PUT, PATCH, DELETE, CONNECT, OPTIONS and TRACE send to an IP address or its associated URL. …


Learn how to schedule robust data extraction with Cron and Docker containers.

Image for post
Image for post
The schema of the public live data set on Google Big Query we are going to extract

This article was also published on https://www.r-bloggers.com/.

This is part two of a multi article series on building and deploying an API robustly with R and Docker that lets you extract live data from Google Big Query. For part one, see Google Big Query with R. For a short introduction into Docker, see part two of the article series about building and deploying a Dashboard, Deploying a Shiny Flexdashboard with Docker.

Scheduled data extractions via database queries or API calls are an important part of building data infrastructure. This enables you to copy a data source easily and have the most recent data with some lag. Another use case is pre-computing aggregated/filtered data from an constantly updated source to enhance the performance of a service. I will show you how to use a Unix cron job to schedule an extraction. …


Lightning fast database querying with the R API.

Image for post
Image for post
Source

This article was also published on https://www.r-bloggers.com/.

This is part one of a multi article series on building and deploying an API robustly with R and Docker that lets you extract live data from Google Big Query. For part two, see Easy and robust live data extraction with Cron and R.

What is Google Big Query?

Big Query is a highly performant cloud data storage service which started in 2011. You can manage it inside the Google Cloud Console and query the storage with standard SQL commands from the bq console or via the API. It is easy to set up, auto scales and there are a variety of established connectors to Google and other services. …


Robust deployment of beautiful dashboards.

Image for post
Image for post
Example Flexdashboard. From shinyapps.io

This is part two of a growing series on data reporting with micro services. For building this dashboard see part one, Shiny Dashboards with Flexdashboard. For deploying dashboards at scale in production with a Shiny Proxy server, see part three.

This article was also published on https://www.r-bloggers.com/.

Dashboards are a fantastic way to deliver data insights fast, intelligible and consistently. Besides designing aesthetic and useful dashboards, a major challenge is deployment. In most businesses, several people besides Data Analysts and various technologies are involved. This leads to a slow deployment process and time consuming dependency management. …


Learn when and how to transform your variables for better insights.

A sweet Transformer statue
A sweet Transformer statue
Photo by Arseny Togulev on Unsplash

This article was also published on https://www.r-bloggers.com/.

I have two series online about more data infrastructure related topics, the first one is about building and robustly deploying a Shiny Flexdashboard with Docker (Link to Part I). The second one is about building and robustly deploying an API for extracting live data from Google Big Query (Link to Part I).

What is Data Transformation?

Data Transformation in a statistics context means the application of a mathematical expression to each point in the data. …


Build beautiful dashboards rapidly.

Image for post
Image for post
Example Flexdashboard. From shinyapps.io

This is part one of a growing series on data reporting with micro services. For deploying web apps and this Flexdashboard in particular see part two, Deploying a Shiny Flexdashboard with Docker. For deploying dashboards at scale in production with a Shiny Proxy server, see part three.

This article was also published on https://www.r-bloggers.com/. Updated 2020–04–10 with short advice on performance improvement.

Most modern businesses rely on data. The demand is ever growing for skilled people who can supply accurate, relevant and intelligible data insights consistently and fast. Those needs are hard to meet and more often than not at stake with each other. They can be met through supplying interactive data dashboards which are mostly used for internal business KPIs, but can also be used as a way to interact with stored data, as a sales platform or as production tool. R Shiny is a convenient framework for producing reactive and powerful dashboards. …

Tim M. Schendzielorz

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store