Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions .github/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,8 @@
- [Option#1: Netlify](#deploying---option-1-netlify)
- [Option#2: Vercel](#deploying---option-2-vercel)
- [Option#3: Docker](#deploying---option-3-docker)
- [Option#4: Source](#deploying---option-4-from-source)
- [Option#4: Render](#deploying---option-4-render)
- [Option#5: Source](#deploying---option-5-from-source)
- [Configuration Options](#configuring)
- [Developer Setup](#developing)
- **[Community](#community)**
Expand Down Expand Up @@ -892,7 +893,15 @@ You can get the Docker image from:

</details>

### Deploying - Option #4: From Source
### Deploying - Option #4: Render

Click the button below, to deploy to Render 👇

[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy-template/api/github/start?template_repo=web-check-render-template)

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this the right link though? I'd of thought it would need to point to this repo

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated. Button now goes to render.com/deploy?repo=https://github.com/Lissy93/web-check so it deploys from this repo.


Uses the official [`lissy93/web-check`](https://hub.docker.com/r/lissy93/web-check) image on a Standard web service. Optional enrichment API keys can be added after deploy.

### Deploying - Option #5: From Source

Install the prerequisites listed in the [Developing](#developing) section, then run:

Expand Down
36 changes: 36 additions & 0 deletions render.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# yaml-language-server: $schema=https://render.com/schema/render.yaml.json
#
# Web Check on Render — Blueprint deploy
# Upstream: https://github.com/Lissy93/web-check
# Image: https://hub.docker.com/r/lissy93/web-check
#
# Pattern: image-wrapper (official lissy93/web-check image with Chromium).
# Optional OSINT API keys: add in Dashboard after deploy (see .env.sample). Do not
# declare them as sync:false here or Apply will prompt for every key.
Comment on lines +8 to +9

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does render not have ability to declare them here, and have them filled in when the user clicks deploy? I only ask, since I think I've seen something similar done elsewhere.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It can (sync: false), but then Apply asks for every key even when they're optional. Left them for the dashboard after so the deploy stays quick. Happy to add a couple of the common ones if you'd rather.


previews:
generation: off

services:
- type: web
name: web-check
runtime: image
plan: standard
region: oregon
image:
url: docker.io/lissy93/web-check:2.1.10

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we put this as :latest, it should always get updates

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, switched it to :latest.

healthCheckPath: /
autoDeployTrigger: off
envVars:
- key: PORT
value: "3000"
- key: TRUST_PROXY
value: "1"
- key: CHROME_PATH
value: "/usr/bin/chromium"

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually not sure that this will work, on render? But I could be wrong. Did you get it working with that path?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah it works. Same path the image already sets internally, and screenshots came through on the deploy.

- key: PUPPETEER_EXECUTABLE_PATH
value: "/usr/bin/chromium"
- key: PUPPETEER_SKIP_DOWNLOAD
value: "true"
- key: API_ENABLE_RATE_LIMIT
value: "true"

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This wouldn't work on render, you won't have the right headers I don't think. Since the X-Forwarded-For header will be the render IP, not clients.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be alright with TRUST_PROXY=1. That's what makes Express pick up the real client IP from X-Forwarded-For instead of Render's.

Loading