Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update browserless #1322

Merged
merged 1 commit into from
Mar 10, 2025
Merged
Show file tree
Hide file tree
Changes from all 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
66 changes: 19 additions & 47 deletions apps/browserless/.env
Original file line number Diff line number Diff line change
@@ -1,53 +1,25 @@
W9_REPO="wordpress"
W9_DIST=community
W9_VERSION="latest"

W9_POWER_PASSWORD="1PrMxExC45LsCT"

# Environments which for user settings when create application
# Named expression: W9_xxx_xxx_SET, xxx refer to file fields
W9_HTTP_PORT_SET=9001
# W9_HTTPS_PORT_SET=9002
# W9_DB_PORT_SET=3306
# W9_SSH_PORT_SET=23
W9_KEY_SET="dfsjdkjf77xjxcjcj"

#### -- Not allowed to edit below environments when recreate app based on existing data -- ####

W9_ID=browserless

# W9_HTTP_PORT or W9_HTTPS_PORT is need at leaset and used for proxy for web application
# Some container (e.g teleport) need HTTPS access, then need to set this pra
W9_HTTP_PORT=80
W9_HTTPS_PORT=81

W9_LOGIN_USER=admin
# use https://1password.com/zh-cn/password-generator/ to genarate 14 bit password
# this password can also use password file
W9_LOGIN_PASSWORD=$W9_POWER_PASSWORD
W9_ADMIN_PATH="/wp-login"

# Container name's suffix must use one of the value
W9_DB_EXPOSE="mysql,postgresql,mariadb,mongodb,redis"

# It is used when the application APP needs to set an external URL, which can be IP(or domain), IP:PORT
# If have protocols, should be set it in the APP's ENV
W9_URL=internet_ip:$W9_HTTP_PORT_SET
# modifies W9_URL on init when it is true
# chromium,chrome,firefox,
W9_REPO="ghcr.io/browserless/chromium"
W9_DIST='community'
W9_VERSION='latest'
W9_POWER_PASSWORD="TKYw35bpCyq4q6AW3"
W9_ID='browserless'
W9_HTTP_PORT=3000
W9_HTTP_PORT_SET='9001'

W9_LOGIN_TOKEN=$W9_POWER_PASSWORD
W9_URL='internet_ip:$W9_HTTP_PORT_SET'
W9_URL_REPLACE=true

W9_NETWORK=websoft9

#### ----------------------------------------------------------------------------------------- ####

# Below environment is created by this app: https://docs.browserless.io/baas/docker/config

# Below environment is created by this app

WORDPRESS_DB_HOST=$W9_ID-mariadb
WORDPRESS_DB_USER=wordpress #if use postgresql, it need set to postgres
WORDPRESS_DB_PASSWORD=$W9_POWER_PASSWORD
WORDPRESS_DB_NAME=wordpress


#W9_NAME=""
#W9_RCODE=""
DOWNLOAD_DIR="/downloads"
CONCURRENT=10
TIMEOUT=60000
QUEUED=10
CORS=true
PROXY_HOST=$W9_URL
TOKEN=$W9_POWER_PASSWORD
22 changes: 21 additions & 1 deletion apps/browserless/Notes.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,22 @@
# Appname
# browserless

## Quickstart

Running shell script to test this application

```
curl -X POST \
http://browserless.test2.websoft9.cn/pdf?token=YOUR_API_TOKEN_HERE \
-H 'Cache-Control: no-cache' \
-H 'Content-Type: application/json' \
-d '{
"url": "https://www.websoft9.com/",
"options": {
"displayHeaderFooter": true,
"printBackground": false,
"format": "A0"
}
}'
```

## FAQ
45 changes: 9 additions & 36 deletions apps/browserless/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,50 +1,23 @@
# image,docs: https://hub.docker.com/_/wordpress/
# image: https://github.com/orgs/browserless/packages?repo_name=browserless
# docs: https://docs.browserless.io/baas/docker/config

services:

wordpress:
browserless:
image: $W9_REPO:$W9_VERSION
container_name: $W9_ID
restart: unless-stopped
#This is for access host from container
# extra_hosts: ["host.docker.internal:host-gateway"]
# command: |
# /bin/bash -c "ping -c 3 host.docker.internal"
logging:
driver: "json-file"
options:
max-file: "5"
max-size: 10m
deploy:
resources:
limits:
memory: 5g
cpus: '0.7'
ports:
- $W9_HTTP_PORT_SET:80
env_file: .env
- $W9_HTTP_PORT_SET:3000
env_file:
- .env
volumes:
- wordpress:/var/www/html
- ./src/php_exra.ini:/usr/local/etc/php/conf.d/php_exra.ini

mariadb:
image: mariadb:10.4
container_name: $W9_ID-mariadb
restart: unless-stopped
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --innodb_log_buffer_size=30M
volumes:
- mysql_data:/var/lib/mysql
environment:
MYSQL_DATABASE: $WORDPRESS_DB_NAME
MYSQL_USER: $WORDPRESS_DB_USER
MYSQL_PASSWORD: $W9_POWER_PASSWORD
MYSQL_ROOT_PASSWORD: $W9_POWER_PASSWORD
- download:/downloads

volumes:
wordpress:
mysql_data:
download:

networks:
default:
name: $W9_NETWORK
external: true
external: true
57 changes: 0 additions & 57 deletions apps/browserless/src/nginx-proxy.conf.template

This file was deleted.

8 changes: 0 additions & 8 deletions apps/browserless/src/php_exra.ini

This file was deleted.

6 changes: 3 additions & 3 deletions apps/browserless/variables.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@
}
],
"requirements": {
"cpu": "2",
"memory": "4",
"disk": "10",
"cpu": "1",
"memory": "2",
"disk": "2",
"url": "https://www.browserless.io"
}
}