Installing Headless chromium w/o docker

Is there a straightforward way to install headless chrome on a Render web server w/o the hassle of using Docker?

Hi Kareem,

Thanks for reaching out.

I suppose it would depend on your definition of “straightforward” :wink:

The Build Command is pretty flexible to be able to install binaries and whatever else your environment may need, as long as they don’t require any special permissions.

As an example, this bash script would install a Chrome binary: https://gist.github.com/BigAlRender/41f4c4d87df3e25770e3db8db728443e

Hope that helps

Alan

1 Like

You script seems perfectly straightforward, thanks @al_ps :wink:

One question - I uncomented this line in your script:
# export PATH="${PATH}:/opt/render/project/.render/chrome/opt/google/chrome/"

I was still getting an error when my app tried to use Chrome. So I SSH’d into the box to check the path, and /opt/render/project/.render/chrome/opt/google/chrome/ wasn’t in it. Do I need to stick that line somewhere else? The comment mentions using it as part of my “Start Command”. What’s the Start Command?

Hi Kareem,

There’s a note above the line you uncommented:

# be sure to add Chromes location to the PATH as part of your Start Command

That export needs to be part of the Start Command, not the Build Command/script. The Start Command is on the Settings page of your service and is the command run to start your application. You could prepend the export, e.g.:

export PATH="${PATH}:/opt/render/project/.render/chrome/opt/google/chrome/"; your_normal_start_command;

Or you could create a render-start.sh with those 2 commands in a similar way to the build example.

Hope that helps

Alan

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.