Manuel
2e3a3c59c3
* Add gitattributes * Update README to include additional configuration instructions * Update OBS app to use prebuilt Docker images * Remove obsolete links attribute from compose files * Use cage based image by default for OBS app * Fix use of yaml anchors in compose files for new compose version |
||
---|---|---|
apps/obs | ||
caddy | ||
.env | ||
.gitattributes | ||
.gitignore | ||
compose.yml | ||
LICENSE.txt | ||
prepare.sh | ||
README.md |
Desktop in Docker
This serves as a reference for how to run an arbitrary desktop environment, window manager or single application in docker and served securely in Browser using Guacamole.
Run
First we need to prepare the database because Guacamole is a bit special in this regard.
It should also ask you what domain Caddy should use to serve Guacamole on, it should automatically try to get a valid certificate for your domain.
$ ./prepare.sh
Domain Guacamole should be served on [localhost]: desktop.mydomain.com
Preparing folder guacamole/init and creating guacamole/init/initdb.sql
Setting permissions for user directory (chown needs root)
everything done
After that you can already start the containers using docker-compose -f compose.yml up -d
to create the network first and then optionally run docker-compose up -d
to build and start the default OBS app container.
Using the default guacamole credentials guacadmin:guacadmin
, you can now create a connection using obs:5900
as network parameters in Settings > Connection > New Connection
with VNC as protocol.
Config
There are a few environment variables you can set in .env
that are used by docker-compose
for the compose.yml
.
If you want to serve it locally for tesing you can uncomment CADDY_HTTP
and CADDY_HTTPS
in the reference .env
file. By default docker makes it listen on port 80
and 443
on all interfaces.