/pihole-dnscrypt-docker

A docker-compose for Pi-hole and DNSCrypt, daemonized with a systemd service file.

GNU General Public License v3.0GPL-3.0

logo

Pi-hole DNSCrypt Docker

A docker-compose for Pi-hole and DNSCrypt, daemonized with a systemd service file.

Dependencies

docker
docker-compose

Uses the following Docker containers:

Configuration

Edit docker-compose.yml in the following ways.

Uncomment WEBPASSWORD and put in a password, by default it will be randomized.

WEBPASSWORD: 'password'

Uncomment TZ and put in your timezone, default is UTC.

  • On Linux you can use timedatectl list-timezones to find the correct timezone.
TZ: 'America/Chicago'

Edit etc-dnscrypt-proxy/dnscrypt-proxy.toml to your preference.

Installation

  1. Clone this repository to a directory of your choice.

    git clone https://gitlab.com/losuler/pihole-dnscrypt-docker
  2. Edit pihole-dnscrypt-docker.service to point to the directory of the cloned repository.

    WorkingDirectory=/path/to/pihole-dnscrypt-docker
  3. Copy the systemd service file.

    cp pihole-dnscrypt-docker.service /etc/systemd/system/
  4. Reload the systemd manager configuration.

    systemctl daemon-reload
  5. Enable and start the systemd service.

    systemctl enable --now pihole-dnscrypt-docker

Updating images

  1. To update all images used by this docker-compose.

    docker-compose pull
  2. Restart the systemd service.

    systemctl restart pihole-dnscrypt-docker

List old/unused images.

docker images -f dangling=true

Remove old/unused images.

docker image prune

Viewing logs

To view the status of the service.

systemctl status pihole-dnscrypt-docker

To view the entire log (append -f to view a live feed of the logs).

journalctl -u pihole-dnscrypt-docker

Testing

To test the running of the docker-compose before running the service.

docker-compose up --force-recreate