Web browser running on a container using webtop
Table of Contents
With webtop – you can run an isolated container with full features of running a distro OS on the web browser.
Warning: Running a web browser over the public internet imposes a great security threat. Please be careful while setting up the instance and make sure you use a strong password.
Webtop uses technology stack of,
- Guacamole Server
- xrdp Server
- Pulseaudio
- Custom nodejs frontend
Everything works fine except – clipboard (I will update the article when I figure it out)
Webtop can be used with Docker running on port 3000
.
Install docker
Create docker-compose.yml
and paste the below (feel free to change as required),
version: "2.1"
services:
webtop:
image: lscr.io/linuxserver/webtop
container_name: webtop
security_opt:
- seccomp:unconfined #optional
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Kolkata
- SUBFOLDER=/ #optional
- KEYBOARD=en-us-qwerty #optional
- AUTO_LOGIN=false
volumes:
- /path/to/data:/config
- /var/run/docker.sock:/var/run/docker.sock #optional
ports:
- 3000:3000
restart: unless-stopped
You can check if docker container is running by checking docker ps
. Then open http://localhost:3000
to access your instance. Login with username abc
and password abc
Password can be changed by using terminal inside the webtop container by using passwd
command.
New users can be added by running /config/startwm.sh
You can also make use of Nginx Proxy Manager as a reverse proxy and serve traffic over SSL. Here is another article that I wrote, Nginx proxy manager as reverse proxy. I would also recommend proxying over Cloudflare. If you are an advanced user, make use of their WAF filtering.
Reference:
Meet Webtops A Linux Desktop Environment In Your Browser | LinuxServer.io