How It Works
When you connect your GitHub, GitLab or Bitbucket repository, Hostman does the following:
- Sets up a cloud server with all the necessary software, such as a web server, Docker service, and others. It also sets up all security and performance settings following best practices.
- Pulls the code from your GitHub, GitLab or Bitbucket repository.
- Installs all dependencies stored in special files, such as
requirements.txtfor Python orpackage.jsonfor Node.JS. - Builds the code and checks whether it was built correctly. It also provides you with a build log, which you can easily check if anything goes wrong during the build process.
- Launches a Docker container for backend apps with the necessary environment and runs your application inside it. For a frontend app, Hostman does not launch a container and instead creates a directory on the server where your application will be stored.
- Creates a Hostman subdomain for your application. You can use this domain for testing purposes or for requests inside the app, if it works for you. For production we recommend using your own domain.
- Configures Nginx to proxy your domain to the application.
- Installs a Let’s Encrypt SSL certificate to make sure all the data is reliably protected. Hostman uses an SSL connection between all the services in its architecture.
When you push a new commit to your Git repository, the same cycle is repeated again: Hostman pulls the code, installs dependencies, builds the application, and so on. This includes launching a new Docker container, which will have no data from the previous container. This way we ensure a clean deployment.
Hostman will automatically deploy the changes if you leave the autodeploy option enabled.