File permission flags are being lost when uploaded to volume through Filebrowser

2 years ago

I am trying to upload some files that my Browserless image needs to access to a volume via Filebrowser, but I am running into issues. They need 755 permissions and I think that when I upload them to the volume with Filebrowser, its losing that (I've modified these on my computer before uploading).
I tried modifying the permissions through the start command but it got stuck on "deploying".

181 Replies

2 years ago

it got stuck on deploying either because railway's ongoing issue or your start command was wrong and filebrowser never started


2 years ago

my start command was chmod 755 /usr/src/app/chrome-extensions/chrome-extension


2 years ago

(I forgot to mention that after i uploaded the folder to the volume, i disconnected it and reconnected it to the browserless instance at /usr/src/app/chrome-extensions)


2 years ago

The big picture issue is getting the files onto that volume with the correct permission flags


2 years ago

I was able to make a custom start command with ls -l dir in front of teh real start command to see the permissions, and they were in fact unchanged (correct). I'm now trying to find what the issue is.


2 years ago

what is the actual error you are getting though


2 years ago

I have a chrome extension that i am trying to use with a Browserless puppeteer instance. It is working when I run it locally using chrome on my laptop with the extension. It is also working when i use browserless with the extension added on a Browserless docker image. It isn't working when I pushed it to railway and have teh extension loaded onto the volume.


2 years ago

im not receiving a specific error, the extension just isnt working. Previous issues ive run into that have had this same result is the extension not having drwxr-xr-x permissions, however i've confirmed that it has this on the volume.


2 years ago

are you aware the template deploys browserless v1?


2 years ago

no i was not


2 years ago

so would the best solution be to deploy the browserless instance myself and try?


2 years ago

is there an advantage to sticking with v1?


2 years ago

they dropped support for some library so i feel like that makes the template limited in its use if i went with v2


2 years ago

are you running v2 locally?


2 years ago

yes


2 years ago

as opposed to another approach to hosting it.


2 years ago

is using v1 out of the question for you?


2 years ago

it is due to the fact that I cannot figure out how i would fix this issue of extensions not working. I want to try and isolate the problem as much as i can


2 years ago

use v1 locally and get extensions working?


2 years ago

that’s another option yes


2 years ago

but i would prefer to not limit myself to new features as many of them would be useful for my project and they’re only available on v2. if i have to find workarounds that’s also fine


2 years ago

have you taken a look at repo that browserless deploys from?


2 years ago

yes and that’s what i’m gonna try and deploy


2 years ago

thats already what is deploying


2 years ago

i thought it was deploying v1


2 years ago

it is



2 years ago

im talkin ab that repo


2 years ago

which is the updated one


2 years ago

you will lose support for private networking


2 years ago

ooh


2 years ago

thats a good point


2 years ago

theres still the token authenticaiton


2 years ago

so other than latency security wont be an issue i dont think


2 years ago

egress fees


2 years ago

oh ic


2 years ago

but do you think they would be less than if i just hosted on a vps?


2 years ago

and i dont think that it would take much bandwidth


2 years ago

i think you should use v1, if you have a good enough usecase for v2, i will make you a v2 template


2 years ago

i definitely dont think ill need a v2


2 years ago

tempate


2 years ago

me neither


2 years ago

i can always use teh docker image and deploy that for v2 if needed


2 years ago

you will lose private networking support


2 years ago

right


2 years ago

but other than a small increase in egress fees it won't be an issue right


2 years ago

and i wasnt planning on using private networking for the code anyways actualy since i was gonna use cloud run


2 years ago

never say small egress


2 years ago

because i dont need it to be running 24/7


2 years ago

and its within the free tier i believe


2 years ago

use app sleeping on railway then


2 years ago

i need it to scale though


2 years ago

replicas


2 years ago

idk how to use those 😭


2 years ago

but its an equivalent?


2 years ago

i can def use them


2 years ago

scale in what direction?


2 years ago

horizontally


2 years ago

why is that


2 years ago

because of the


2 years ago

ohh shoot


2 years ago

by using browserless


2 years ago

i dont need to anymore


2 years ago

previously it was because of how it wasnt good to run puppteer scripts that would have concurrent runs on one environment


2 years ago

but browserless may have removed the need for that


2 years ago

either way i need to fix this issue with extensions first


2 years ago

run v1 locally, get extensions working


2 years ago

thats what ill do if this doenst work


2 years ago

i just want to try and get it working as easily as possible first


2 years ago

i don't have to specify a port for docker right it just does it automatically?


2 years ago

v1 locally is the way to go for sure


2 years ago

okay


2 years ago

just because of how important that egress fee is?


2 years ago

it could be pennys, it could be dollars, i dont want to see another help thread saying my egress is high can i have a refund 😆


2 years ago

lmao aight


2 years ago

why can't i use private networking just on the docker container


2 years ago

browserless itself does not support ipv6


2 years ago

gotcha


2 years ago

ooooh


2 years ago

its working i think


2 years ago

yep its working


2 years ago

v1 locally?


2 years ago

no v2 docker


2 years ago

ima do this now


2 years ago

the reason im hesitatnt though is because it is doing it in the v2 version using chromium's default way to use extensions, so i'm not sure what other possible way there would be to do it if that doesnt work. Browserless definitely doesn't have support for that.


2 years ago

it could be the way that the launch args are sent to the browserless instance though..


2 years ago

if you cant make it work with v1 locally i will make you a browserless v2 template


2 years ago

but please try with v1 first


2 years ago

alright


2 years ago

do we got a deal?


2 years ago

yep


2 years ago

thats actually great


2 years ago

because i think you'll be able to help me find out how to do this in v1 very quickly


2 years ago

sounds good, keep me updated


2 years ago

never done this before


2 years ago

have you seen --args been used with chromium before in any capacity

1264723362358493200


2 years ago

whether its selenium or puppeteer or anything else


2 years ago

1264723599831597300


2 years ago

yes, you need those to run as root


2 years ago

right


2 years ago

so in v2


2 years ago

i use dynamic launch args to pass those over and specify the extension location



2 years ago

1264723860637356000


2 years ago

& they are added to the end of the wss endpoint


2 years ago

i need to find out how to do this in the first version


2 years ago

does v1 even support that?


2 years ago

i dont think they do using dynamic launch args


2 years ago

because 1. it didnt work (and it does on v2 without changing the code) and 2. theres this text on the docs page.

1264724398418563000


2 years ago

im gonna look into it thuogh


2 years ago

i found something related to building browserless that i dont understand, you might though since you made the template



2 years ago

#Webdriver (selenium)


2 years ago

I didn't build anything


2 years ago

1264724960576934000


2 years ago

okay


2 years ago

well the reason i don't understand this code is that in browserless, you dont use selenium or anything. you just connect to the WS


2 years ago

actually i think thats how it would be done in selenium


2 years ago

selenium is just another library like puppeteer


2 years ago

right


2 years ago

yeah ive used it


2 years ago

im gonna keep looking into how to specify those args


2 years ago

DEFAULTLAUNCHARGS


2 years ago

is something i came across that was deprecated in v2


2 years ago

it probably won't be in v1


2 years ago

im gonna try it


2 years ago

Okay you might be able to help with this part. Its passed in alongside an array of strings args. Will it matter if i just put this array in the environmental variable editor, will it be parsed as a string?

1264725914135040000


2 years ago

yeah that should work fine


2 years ago

alr


2 years ago

i have to go for a bit but i really appreciate it


2 years ago

no problem!


2 years ago

I think it will work. I can’t try it right now because i’m on my phone but it’s marked as deprecated on the v2 migration



2 years ago

oh yeah

Drop support for Selenium and Webdriver.


2 years ago

thats why im still using v1


2 years ago

aight im about to try it


2 years ago

railway is conveniently not wanting to build rn


2 years ago

1264748995457061000


2 years ago

It's accepting the launch arguments but the chrome extension isnt being loaded


2 years ago

it acknowledges them in the info statement when the browserless service starts


2 years ago

someone else identified the issue previously for v1 and a solution was never posted:
https://github.com/browserless/browserless/issues/799


2 years ago

well that's unfortunate


2 years ago

yeah ive been trying for ab 4 hours now


2 years ago

lmk if u make a v2 temp


2 years ago

good timing


2 years ago

whys that


2 years ago

working on it right now


2 years ago

amazing


2 years ago


2 years ago

let me know if there are any issues


2 years ago

private endpoitns are supposed to work right?


2 years ago

yes private networking is supported


2 years ago

apparently not


2 years ago

its crashing


2 years ago

this error which is caused by a ws not workign correctly

1265125941664026600


2 years ago

are those logs from your app, or the browserless service


2 years ago

1265126070492074200


2 years ago

app


2 years ago

let me make sure its using the env varibale rq


2 years ago

cuz i have it on a gh branch


2 years ago

that error doesnt really even look like it has anything to do with browserless


2 years ago

im testing it using the public endpoint


2 years ago

but im 90% sure that this is just what happens when its a bad endpoint


2 years ago

what client lib?


2 years ago

puppeteer


2 years ago

wait hmm its happenign with public as well


2 years ago

this is really weird 1 sec


2 years ago

okay well to be fair i didnt test it


2 years ago

im gonna test it with the v1 endpoint


2 years ago

Okay it works when i use v1 public


2 years ago

so its def an issue with the endpoint somehow


2 years ago

okay ill test the v2 template with puppetter


2 years ago

v1 public & private work
v2 public & private dont work


2 years ago

got it working, the browserless docs are outdated so therefor the BROWSER_WS_ENDPOINT variable the template came with was wrong for v2


2 years ago

hard refresh your browser and deploy the browserless v2 template again


2 years ago

aight


2 years ago

preciate it


2 years ago

let me know if it still doesn't work


2 years ago

@celebrations - did the template work for you?


2 years ago

yep its workign great


2 years ago

awsome


Loading...