@pmarini pmarini authored on 25 Jul 2023
how-to first commit for mail server template 2 years ago
templates add MAIL_DOMAIN resolution record in /etc/hosts 2 years ago
.gitignore adapt templates to Ubuntu 22.04 2 years ago
LICENSE Initial commit 3 years ago
README.md Add Mail Server to the list of templates 2 years ago
README.md
:zap: This project is a personal initiative, without any official support by Nextcloud GmbH

Introduction

nc-env is a tool that enables you to provision isolated Nextcloud test environments in your machine. It is built on vagrant and LXD.

Features

You can leverage this tool to:

  • Quickly setup and run an isolated Nextcloud instance in your machine.
  • Try features or troubleshoot issues without any manual installation and minimal configuration.
  • Learn and explore the integration of Nextcloud with common enterprise systems, such as LDAP, ElasticSearch, Single Sign-On or an Office Editing Service.

Available Templates

nc-env is based on templates. A template is a set of instructions and artifacts sufficient to have a service up and running in a container.

:zap: The templates in this repository are designed and developed for testing and development environments, not for production

The following table summarizes the list of available templates:

Template Description Maintained
template00-clean-server Clean server YES
template01-nextcloud-standalone Nextcloud standalone server YES
template02-collabora-online Collabora Online server - CODE or Enterprise YES
template03-keycloak Keycloak standalone server YES
template04-ldap OpenLDAP server + phpLDAPadmin YES
template05-elasticsearch ElasticSearch server YES
template06-nextcloud-db-standalone Database node (to be used in a cluster) YES
template07-glusterfs-server GlusterFS node (to be used in a cluster) YES
template08-haproxy-server HAproxy (to be used in a cluster) YES
template09-web-server-node Web Server Node (to be used in a cluster) YES
template10-redis-server Redis server(to be used in a cluster) YES
template11-minio-storage-server MinIO Storage Server YES
template13-talk-hpb Talk High Performance Backend YES
template14-self-hosted-appstore Nextcloud Self-Hosted Appstore NO
template16-zabbix-server Zabbix Monitoring Server YES
template17-mail-server Mox Mail Server YES

Setup

This section aims at giving an high-level procedure to setup your environment.

Please head to the how-to folder to find step-by-step guides for the most common Linux Desktop distributions (Fedora, Ubuntu, Debian).

  1. Install and configure LXD
  2. Configure the host to resolve container hostnames
  3. Install and configure vagrant
  4. Install LXD plugin vagrant-lxd
  5. Install mkcert
  6. Get the latest release of nc-env
  7. Start provisioning

A Virtual Machine is also available for those that want to have a fully isolated environment, instructions are available here.

Resources