Google Bard

Bard is a large language model (LLM) from Google AI, trained on a massive dataset of text and code. It can generate text, translate languages, write different kinds of creative content, and answer our questions in an informative way. It can be considered an alternative to ChatGPT, but the access is not allowed in all the world equally.

This made me thought about how privacy and data security have become more than just buzzwords; they are essential components of responsible internet usage.

One common use-case is coupling a VPN with a web browser, such as Firefox. This setup ensures that all web browsing traffic is routed through the VPN, further bolstering online privacy and help us avoid censorship.

In this blog post, we will guide you through the steps to install Firefox and route its traffic through a VPN using Docker containers, thus enhancing your web browsing security and of course, allowing you to use Google Bard from Anywhere.

Getting Started

Docker Basics

  • Have Docker installed in your device - I am using an OrangePi
  • Install Portainer - bypassing the terminal to deploy containers
  • Now, lets install Firefox in a container that we can access from any other local device and let’s route the traffic through a VPN

VPN: Docker Gluetun

Now, lets create our Dockerized VPN instance. With Gluetun you can use several well-known VPN providers, but also you can use your own wireguard instance hosted for example in the cloud. You can use any VPN that admits OpenVPN or Wireguard protocols.

For testing, I have tried it with Mullvad VPN. After registering:

  • You need to generate a public key and download the config
  • Open any of those files and extract the following variables to use in the VPN Docker Container
[Interface]
PrivateKey = you_will_need_this_input
Address = and_also_the_ipv4_version
DNS = not needed

[Peer]
PublicKey = not needed
AllowedIPs = not needed
Endpoint = not needed

The Docker-compose needed for gluetun to run and route the traffic of the Firefox Container:

version: "3"
services:
  gluetun:
    image: qmcgaw/gluetun
    cap_add:
      - NET_ADMIN
    ports:
      - 3000:3000/tcp #the firefox container port
    environment:
      - VPN_SERVICE_PROVIDER=mullvad
      - VPN_TYPE=wireguard
      - WIREGUARD_PRIVATE_KEY=you_will_need_this_input
      - WIREGUARD_ADDRESSES=and_also_the_ipv4_version
      - SERVER_CITIES=New York NY #choose any available city
    volumes:
      - /Home/Docker/Gluetun:/gluetun
    restart: unless-stopped  

Firefox: Docker Container

Basically we will be accesing a Firefox docker instance from our browser in any device connected to our home’s router.

The configuration file ready to connect to the VPN container is:

---
version: "2.1"

volumes:
  firefox:

services:
  firefox:
    image: ghcr.io/linuxserver/firefox
    container_name: firefox
    environment:
      - PUID=1026 #change this to for your settings
      - PGID=100 #change this to for your settings
      - TZ=Europe/Paris  #change this to for your location
    volumes:
      - firefox:/config
    network_mode: "container:gluetun" #change gluetun to your VPN container name
    #ports: we wont be needing these 2 lines, as we are routing the traffic through the VPN container
    #  - 3000:3000
    shm_size: "1gb"
    restart: unless-stopped

After deploying it, we are ready to access a Firefox instance that is connected to our VPN.

Using Google Bard

Now, just enjoy and use BARD wisely anywhere through any device like so:

Using Bard From Firefox Container