1.5 KiB
1.5 KiB
Purpose: Sometimes you just want an instance of Firefox running on an Alpine Linux container, that has persistence (Extensions, bookmarks, history, etc) outside of the container (with bind-mapped folders). This is useful for a number of reasons, but insecure by default, so you have to protect it behind something like a Keycloak Server so it is not misused.
Docker Configuration
version: '3'
services:
firefox:
environment:
- TZ=America/Denver
image: jlesage/firefox
ports:
- "5800:5800" # VNC WebUI
volumes:
- /srv/containers/firefox:/config:rw
restart: always
networks:
docker_network:
ipv4_address: 192.168.5.4
networks:
default:
external:
name: docker_network
docker_network:
external: true
N/A
Traefik Reverse Proxy Configuration
If the container does not run on the same host as Traefik, you will need to manually add configuration to Traefik's dynamic config file, outlined below.
http:
routers:
work-environment:
entryPoints:
- websecure
tls:
certResolver: letsencrypt
service: work-environment
rule: Host(`work-environment.bunny-lab.io`)
middlewares:
- work-environment # Referencing the Keycloak Server
services:
work-environment:
loadBalancer:
servers:
- url: http://192.168.5.4:5800
passHostHeader: true