Open BloodyIron opened 9 months ago
I'm so close to getting this running, really need the last inch help with the headless Chrome, any insights appreciated! Thanks! :D
I'm having the same issue using the basic template and just using localhost as the ip
Have you managed to get this working? I'm facing the same problem.
Just as a courtesy since this issue helped me, here is my k8s setup that works correctly for the most part. I have external postgres cluster running so I don't have that included here:
Deployment/services:
apiVersion: apps/v1
kind: Deployment
metadata:
name: rx-resume
namespace: ...
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: rx-resume
template:
metadata:
labels:
app: rx-resume
spec:
containers:
- name: rx-resume
image: amruthpillai/reactive-resume:v4.1.8
ports:
- containerPort: 3010
env:
- name: PORT
value: "3010"
- name: PUBLIC_URL
value: "https://..."
- name: CHROME_TOKEN
value: "..."
- name: CHROME_URL
value: "ws://localhost:3000"
- name: DATABASE_URL
value: "postgresql://..."
- name: MAIL_FROM
value: "example@example.com"
- name: SMTP_URL
value: "smtp://...:587"
- name: DISABLE_SIGNUPS
value: "false"
- name: DISABLE_EMAIL_AUTH
value: "false"
- name: STORAGE_ENDPOINT
value: "localhost"
- name: STORAGE_REGION
value: "us-east-1"
- name: STORAGE_BUCKET
value: "default"
- name: STORAGE_ACCESS_KEY
value: "..."
- name: STORAGE_SECRET_KEY
value: "..."
- name: STORAGE_USE_SSL
value: "false"
- name: SKIP_BUCKET_CHECK
value: "false"
- name: STORAGE_PORT
value: "9000"
- name: STORAGE_URL
value: "https://.../default"
- name: ACCESS_TOKEN_SECRET
value: "..."
- name: REFRESH_TOKEN_SECRET
value: "..."
resources:
limits:
cpu: 1000m
memory: 2048Mi
requests:
cpu: 1000m
memory: 2048Mi
- name: rx-chrome
image: ghcr.io/browserless/chromium:latest
ports:
- containerPort: 3000
env:
- name: TIMEOUT
value: "300000"
- name: CONCURRENT
value: "10"
- name: TOKEN
value: "..."
- name: EXIT_ON_HEALTH_FAILURE
value: "false"
- name: PRE_REQUEST_HEALTH_CHECK
value: "false"
resources:
limits:
cpu: 2000m
memory: 4096Mi
requests:
cpu: 2000m
memory: 4096Mi
- name: rx-resume-s3
image: minio/minio:latest
args:
- server
- /data
env:
- name: MINIO_ROOT_USER
value: "..."
- name: MINIO_ROOT_PASSWORD
value: "..."
ports:
- name: s3
containerPort: 9000
imagePullPolicy: Always
volumeMounts:
- mountPath: /data
name: assets-storage
resources:
limits:
cpu: 1000m
memory: 2048Mi
requests:
cpu: 1000m
memory: 2048Mi
volumes:
- name: assets-storage
persistentVolumeClaim:
claimName: assets-pvc
---
apiVersion: v1
kind: Service
metadata:
name: rx-resume
namespace: tools
spec:
ports:
- port: 3010
targetPort: 3010
selector:
app: rx-resume
---
apiVersion: v1
kind: Service
metadata:
name: rx-resume-s3
namespace: tools
spec:
ports:
- port: 9000
targetPort: 9000
selector:
app: rx-resume
---
apiVersion: v1
kind: Service
metadata:
name: rx-resume-s3-dashboard
namespace: tools
spec:
ports:
- port: 44253
targetPort: 44253
selector:
app: rx-resume
PVC:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: assets-pvc
namespace: tools
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: longhorn
Ingress:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: rx-resume-ingress
namespace: tools
annotations:
nginx.ingress.kubernetes.io/auth-tls-pass-certificate-to-upstream: "true"
nginx.ingress.kubernetes.io/auth-tls-secret: tools/cloudflare-tls-secret
nginx.ingress.kubernetes.io/auth-tls-verify-client: "on"
nginx.ingress.kubernetes.io/auth-tls-verify-depth: "1"
spec:
ingressClassName: nginx
rules:
- host: ...
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: rx-resume
port:
number: 3010
tls:
- hosts:
- ...
secretName: cloudflare-origin-server
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: rx-minio-ingress
namespace: tools
annotations:
nginx.ingress.kubernetes.io/auth-tls-pass-certificate-to-upstream: "true"
nginx.ingress.kubernetes.io/auth-tls-secret: tools/cloudflare-tls-secret
nginx.ingress.kubernetes.io/auth-tls-verify-client: "on"
nginx.ingress.kubernetes.io/auth-tls-verify-depth: "1"
spec:
ingressClassName: nginx
rules:
- host: ...
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: rx-resume-s3
port:
number: 9000
tls:
- hosts:
- ...
secretName: cloudflare-origin-server
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: rx-minio-dashboard-ingress
namespace: tools
annotations:
nginx.ingress.kubernetes.io/auth-tls-pass-certificate-to-upstream: "true"
nginx.ingress.kubernetes.io/auth-tls-secret: tools/cloudflare-tls-secret
nginx.ingress.kubernetes.io/auth-tls-verify-client: "on"
nginx.ingress.kubernetes.io/auth-tls-verify-depth: "1"
spec:
ingressClassName: nginx
rules:
- host: ...
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: rx-resume-s3-dashboard
port:
number: 44253
tls:
- hosts:
- ...
secretName: cloudflare-origin-server
Is there an existing issue for this?
Product Variant
Self-Hosted
Current Behavior
When I get to a page where Reactive Resume tries to render with Chrome, it shows the loading animations, but never displays anything. I get the below log outputs
Reactive Resume container output:
Chrome container output:
Expected Behavior
To actually get resume previews and file generation
Steps To Reproduce
This is my kubernetes deployment:
What browsers are you seeing the problem on?
Chrome
What template are you using?
None
Anything else?
This looks like it might be the first kubernetes deployment example on the internet. Hi future people! Hope this helps! But I'm still stuck right now, hah.