Additional services
Additional services
Ploi Cloud offers specialized container services beyond standard databases and caches for more flexibility.
Available services
Chrome Headless
Chrome Headless provides a headless Chrome browser for web scraping, screenshot generation, and PDF creation.
Use cases:
- Web scraping and automation
- PDF generation from web pages
- Screenshot capture
- Browser testing
Environment variables injected:
CHROME_HEADLESS_URL- Full URL to the serviceCHROME_HEADLESS_HOST- Service hostnameCHROME_HEADLESS_PORT- Port 3000BROWSERLESS_URL- Alternative URL variable
Settings you can change:
BLOCK_ADS- Blocks third party ad requests in every browser session. Ad blocking is on unless you set this tofalseDEFAULT_BLOCK_ADS- Ad blocking default for sessions that do not pass ablockAdsoption themselvesCONNECTION_TIMEOUT- Connection timeout in milliseconds,60000by defaultMAX_CONCURRENT_SESSIONS- Maximum concurrent browser sessions,10by defaultTOKEN- Authentication token for API access
Both ad blocking settings only accept true or false, and saving anything else gives you an error such as "BLOCK_ADS must be true or false." Leave them empty to keep ad blocking on.
ClickHouse
ClickHouse is a fast column-oriented database optimized for analytics and big data workloads.
Use cases:
- Real-time analytics
- Log analysis
- Time-series data
- Data warehousing
Environment variables injected:
CLICKHOUSE_URL- HTTP connection URLCLICKHOUSE_HOST- Service hostnameCLICKHOUSE_PORT- HTTP port 8123CLICKHOUSE_NATIVE_PORT- Native protocol port 9000
Gotenberg
Gotenberg provides a stateless API for converting HTML, Markdown, and Office documents to PDF.
Use cases:
- Invoice generation
- Report creation
- Document conversion
- Print-ready PDF generation
Environment variables injected:
GOTENBERG_URL- Full URL to the serviceGOTENBERG_HOST- Service hostnameGOTENBERG_PORT- Port 3000
Meilisearch
Meilisearch is a lightning-fast search engine with typo tolerance.
Use cases:
- Full-text search
- Product search
- Documentation search
- Instant search suggestions
Environment variables injected:
MEILISEARCH_URL- Full URL to the serviceMEILISEARCH_HOST- Service hostnameMEILISEARCH_PORT- Port 7700MEILISEARCH_KEY- Master key for authenticationMEILI_MASTER_KEY- Alternative master key variable
Typesense
Typesense is a fast, typo-tolerant open source search engine.
Use cases:
- Full-text search
- Product search
- Instant search-as-you-type experiences
- Laravel Scout search backend
Environment variables injected:
TYPESENSE_URL- Full URL to the serviceTYPESENSE_HOST- Service hostnameTYPESENSE_PORT- Port 8108TYPESENSE_PROTOCOL- Protocol (http)TYPESENSE_API_KEY- API key for authentication
Adding a service
- Open your application and find the "Custom services" card
- Use the add button on that card
- Select the service type from the available options
- Give the service a name and choose a version if multiple are available
- Open "Advanced settings" to change any of the optional settings, or leave them empty to keep the defaults
- Click "Create service"
Changing settings of a service
You can change the settings of a service after it has been created.
- Open the menu on the service in the "Custom services" card
- Choose "Edit resources"
- Under "Service configuration", open "Advanced settings"
- Change the fields you want and click "Update resources"
Only the fields you actually changed are saved, so anything you leave untouched keeps its current value. Clearing a field puts the setting back to its default. Saving restarts that one service so it picks up the new values, which means any sessions or connections it is handling at that moment are dropped. Your application itself is not redeployed.
Settings per service:
- Chrome Headless:
BLOCK_ADS,DEFAULT_BLOCK_ADS,CONNECTION_TIMEOUT,MAX_CONCURRENT_SESSIONS,TOKEN - Gotenberg:
LOG_LEVEL,DEFAULT_WAIT_TIMEOUT,DEFAULT_WAIT_DELAY - Meilisearch:
MEILI_ENV,MEILI_LOG_LEVEL - Typesense:
TYPESENSE_ENABLE_CORS,TYPESENSE_LOG_LEVEL
Settings you cannot change afterwards:
MEILI_MASTER_KEYandTYPESENSE_API_KEYare generated when the service is created and injected into your application, so they are not shown as editable fieldsCLICKHOUSE_USER,CLICKHOUSE_PASSWORDandCLICKHOUSE_DBare applied when the service is first created, so ClickHouse shows no editable settings afterwards
The same settings can be set through infrastructure as code, in the settings block of a container service.
Request new services
Need a service that's not yet available? You can request new services to be added to Ploi Cloud via our roadmap at roadmap.ploi.cloud.