25 lines
1015 B
Markdown
25 lines
1015 B
Markdown
|
# 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
|
||
|
done
|
||
|
```
|
||
|
|
||
|
After that you can already start the containers using `docker-compose up -d`
|
||
|
|
||
|
## 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.
|