The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

buoyant

Deploy _server.yml Compliant Applications to DigitalOcean

Overview

buoyant is an R package for deploying web server applications that follow the _server.yml standard to DigitalOcean. This standard provides a unified way to specify and deploy R web servers regardless of the underlying framework (plumber2, fiery, etc.).

Installation

You can install the development version of buoyant from GitHub with:

# install.packages("pak")
pak::pak("posit-dev/buoyant")

Usage

Basic Deployment

library(buoyant)
library(analogsea)

# Authenticate with DigitalOcean
do_oauth()

# Provision a new server
droplet <- do_provision(region = "sfo3")

# Deploy your application
do_deploy_server(
  droplet = droplet,
  path = "myapp",
  local_path = "path/to/my-api",
  port = 8000
)

# Get the URL
do_ip(droplet, "/myapp")

The _server.yml Standard

The _server.yml standard is a lightweight specification for R web servers. At minimum, you need an engine field:

engine: plumber2

Each engine package (like plumber2 or fiery) can define additional fields. The engine R package must provide a launch_server(settings, host = NULL, port = NULL, ...) function.

Features

Getting Help

Supported Engines

The following R packages support the _server.yml standard:

To make your own package compatible, see the _server.yml specification.

Acknowledgments

This package is inspired by plumberDeploy by Bruno Tremblay and Jeff Allen. The _server.yml standard was developed as part of the plumber2 project.

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.