-
Notifications
You must be signed in to change notification settings - Fork 32
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
browservice on docker #27
Comments
The line that would seem to best describe the problem is the following line in the output of each (non-root) run:
This would seem to imply that some Linux capability needed by the Chromium sandbox is not available in the Docker sandbox. I also initially tried to create a Docker container for Browservice, but gave up because of this error. You might get around this by changing the Docker configuration; for example, running the container in privileged mode might work, but it of course reduces the security isolation provided by Docker. You could also run Chromium without sandboxing by passing the argument |
@ttalvitie Thank you so much for your reply. I would do some more investigation on the error, and will try to fix it. In case I find something, I will inform you. Thanks again. |
@ttalvitie From what I see, the people at the Selenium project run Chrome with --no-sandbox as well. I would guess the namespace mechanisms used for the sandbox are more or less the basic primitives Docker containers are made of, therefore the denied permission. So either have Chrome run without a sandbox per tab, making Docker the sandbox, or run Docker with --privileged and have Chrome create a sandbox per tab, the way it is intended to run. I would go for the latter, because Chrome likely creates stronger isolating sandboxes than Docker. Better to have strong isolation for websites than weak isolation for the whole browser. So go for --privileged, place a corresponding docker-compose.yml along with it :-) |
I ended up using |
Hello there. I am building a docker image for the browservice, which you can find at https://github.com/walkero-gr/browserviceondocker
My goal is to have it on docker container running, and I will try to make it available for different platforms as well.
Although for AMD CPUs it seems it is compiled just fine, with UBUNTU 20.04, when I try to run it I have a few issues.
When I try to run it as
root
I get the following error:Then I created a new user and group, and tried to run it without changing any permissions at the files. I had the following error when I tried to run it:
The final test I did was to chown for all the files under release folder to the new user, except the chrome-sandbox. When I tried to run it I got the following error:
I always run the browservice like below
/release/bin/browservice --vice-opt-http-listen-addr=0.0.0.0:8080
As you can see I moved the release folder at the root, after the compiling, and at my repo you can see all the steps I am doing, at the Dockerfile.
After I run it, with
ps -fax
I see the following:I wonder if you can help me figure out what the problem is and fix it.
The text was updated successfully, but these errors were encountered: