# 🐋 Docker
This is the best way to deploy Chevereto.
Docker refers to container technology, in this context you don't need to worry about PHP versioning, missing extensions, virtual host configuration, database server, anything. This is the best way to deploy Chevereto as the software infrastructure is provided by us.
This deploy alternative provides several advantages, to name a few:
- 🤹 Multiple instances
- 📱 Portability
- 🌈 Easy maintenance
- 🔐 Automatic HTTPS setup
- 🎨 Customization
- 👮♂️ More secure
Check the repository at chevereto/docker (opens new window) for instructions.
- Chevereto license (for paid edition)
- Server with
- Shell access
- Hostname pointing to server
# Getting a server
For this guide we are referring to a server as a machine where you can install Docker (opens new window). In this server you will install Chevereto and expose it to the internet. You can use any computer, even at your home or from any cloud provider.
For this guide we will use a Ubuntu server in the cloud.
# Shell access
The shell is a command-line interface that interprets user commands on the server. To access to the server shell you need a terminal emulator software. Don't feel intimidated, is not that hard as it looks as cloud provider may supply a web-based terminal software.
We recommend accessing your server shell with terminal software installed in your computer.
Here are some free, commonly-used terminal emulators by operating system:
|macOS||Terminal, iTerm 2|
|Windows||Windows Terminal, Putty|
|Linux||Gnome Terminal, Tilix, XTerm|
Once you get shell access, make sure that your server has
git installed. You will require to install these utilities if missing.
which make unzip curl git
# Cloning chevereto/docker
Get a copy of our base Docker project by cloning the repository in the server using
git. This will create a
docker folder in the current working directory.
git clone https://github.com/chevereto/docker.git
Go to this newly created
docker folder you can work with our Docker base project.
# Installing Docker
If you are using Ubuntu you can install docker by running:
For other systems follow the instructions for Docker Engine installation (opens new window). Make sure to check at Server for your specific Linux distribution.
Docker Engine installation
# Setup Cron
This process creates a Cron file at
/etc/cron.d/chevereto that will run background jobs for all Chevereto instances in the server.
# Create proxy
This process creates the proxy service that handles incoming web traffic to the server. It will also provide automatic secure certificate for HTTPS.
make proxy EMAIL_HTTPSfirstname.lastname@example.org
EMAIL_HTTPS option pass your email, required for HTTPS certificate notifications.
# Build system image
This process builds the container image for the Chevereto application.
💡 You can omit this step when using free edition as the image is available at GHCR (opens new window).
# Setup namespace
Create a namespace (opens new window) for each one of the Chevereto instances you want to deploy.
To create the
example namespace for
make namespace NAMESPACE=example HOSTNAME=img.chevereto.dev
# Create Chevereto instance
To create an instance run
make up-d command by passing the NAMESPACE option.
💡 When using free edition make sure to pass
make up-d NAMESPACE=example
🎉 Congratulations, Chevereto is now up an running.
To create more instances repeat the steps from Setup namespace for each additional website you want to spawn.