DigitalOcean Marketplace Partner Tools
This repository contains resources for DigitalOcean Marketplace partners, like documentation on image requirements and creation, tools for image cleanup and validation, and templates for build automation.
Getting Started
The overall process for creating a Marketplace image is as follows:
-
Create and configure a build Droplet manually first to make sure your configuration works. You can create a build Droplet with any method, like the control panel, the API, or command-line tools like
doctl
. -
Clean up and validate the build Droplet with the provided scripts,
cleanup.sh
andimg_check.sh
. The scripts will check for and fix potential security concerns and verify that the image will be compatible with Marketplace. -
Take a snapshot of the build Droplet after you power it down, then test the resulting image. While there are several ways to create an image, we recommend snapshots as the most simple and consistent option.
-
Submit your final image to the Marketplace team for review.
Our Getting Started documentation that includes our image requirements, configuration recommendations, how to run commands on first boot and first login, and details on exactly what our helper scripts do.
We also have in this repo a Fabric template and docs and a Packer template and docs that you can use to automate your build system with minimal additional effort.
Supported Operating Systems
To maintain compatibility with Marketplace tools and processes, we support a limited number of Linux distributions and releases for Marketplace images. These options provide either deb
- or rpm
-based packaging and will have security patches and updates for a reasonable time period.
We currently support the following OSes:
- Debian 9 (stretch)
- Debian 10 (buster)
- Ubuntu 18.04 (LTS)
- Ubuntu 16.04 (LTS)
- CentOS 7.x
All supported operating systems are available as base images to build on in the DigitalOcean cloud.
Software Prerequisites
The following software packages are necessary for the initial configuration of new Droplets and to ensure connectivity:
cloud-init
0.76 or higher (0.79 or higher recommended)openssh-server
(SFTP-enabled configuration recommended)
All of these packages are provided by default in the default DigitalOcean base images.