Building Blocks - WIP
Server
Servers are where all your resources are deployed to. It could be a local server (where Coolify is installed) or any remote server.
Requirements
- SSH connectivity between Coolify and the server.
- SSH key for authentication.
Actions taken by Coolify
Coolify will automate a few maintenance (system administrator) tasks on the operating system and monitors its resources.
You will get notified via the notification system you set(webhook, email, discord, slack, telegram).
Project
Resources are grouped together into a project, a tree structure. A project could have infinite number of resources.
Environment
Each project, by default have a production
environment, that is not deletable, but renameable. Environments consists of resources, like application, database or a service, etc.
Application
An application could be a web application, a static website, a backend API, etc. It is a container that runs a process deployed to a defined server.
Database
A database is a container that runs a database process deployed to a defined server.
Service
A service is a more complex type of resource, that consists of several other resources, like an application and a database, etc.
Imagine you would like to deploy a Wordpress application, you would need a database, a web server and a PHP runtime. You could create a service that consists of these resources, grouped together and created automatically for you. Each resource in a service could be deployed to a different server.
Proxy
A server could have a proxy that is used to route traffic to the right resource. It is not mandatory, but it is recommended to use a proxy.
Destination
Destination defines the type of the containerization technology you would like to use. It could be Docker, Docker Swarm or Kubernetes.
Source
Source defines the type of the source code repository you would like to use, like Github, Gitlab, Bitbucket, etc.