Skip to content

DeepWoods/nxfilter-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 

Repository files navigation

NxFilter

About

NxFilter is a scalable and reliable DNS filtering server software by Jahastech.

Container image is based off of Ubuntu:latest minimal with the most current DEB package for NxFilter from NxFilter.

Usage

Interactive container for testing:

docker run -it --name nxfilter \
   -p 53:53/udp \
   -p 19004:19004/udp \
   -p 80:80 \
   -p 443:443 \
   -p 19002-19004:19002-19004 \
   deepwoods/nxfilter:latest

Detached container with persistent data volumes:

docker run -dt --name nxfilter \
  -e TZ=America/Chicago \
  -v nxfconf:/nxfilter/conf \
  -v nxfdb:/nxfilter/db \
  -v nxflog:/nxfilter/log \
  -p 53:53/udp \
  -p 19004:19004/udp \
  -p 80:80 \
  -p 443:443 \
  -p 19002-19004:19002-19004 \
  deepwoods/nxfilter:latest

Configuration

  • The admin GUI URL is http://[DOCKER_HOST_SERVER_IP]/admin
  • The default Block Redirection IP under System -> Setup needs to match your [DOCKER_HOST_SERVER_IP] unless you're bridging your docker network to your local LAN or using MACVLAN.
  • TZ of the container defaults to UTC unless overridden by setting the environment variable to your locale. see List of tz time zones

Docker-compose example

version: '3.5'

services:
  nxfilter:
    image: deepwoods/nxfilter:latest
    container_name: nxfilter
    hostname: nxfilter
    restart: unless-stopped
    environment:
      TZ: "America/Chicago"
    volumes:
      - nxfconf:/nxfilter/conf
      - nxflog:/nxfilter/log
      - nxfdb:/nxfilter/db
    ports:
      - 53:53/udp
      - 19004:19004/udp
      - 80:80
      - 443:443
      - 19002-19004:19002-19004
volumes:
  nxfconf:
  nxfdb:
  nxflog:

Useful Commands

docker-compose to start and detach container: docker-compose up -d

Stop and remove container: docker-compose down

Restart a service: docker-compose restart nxfilter

View logs: docker-compose logs

Open a bash shell on running container name: docker exec -it nxfilter /bin/bash

Warning Commands below will delete all data volumes not associated with a container!

Remove container & persistent volumes(clean slate): docker-compose down && docker volume prune

Updating

  1. Pull the latest container. docker pull deepwoods/nxfilter:latest
  2. Stop and remove the current container. docker stop nxfilter && docker rm nxfilter

Note If using docker-compose: docker-compose down

  1. Run the new container with the same command from above. Detached container

Note If using docker-compose: docker-compose up -d

  1. Make sure that the container is running. docker ps
  2. Check the container logs if unable to access the GUI for some reason. docker logs nxfilter

Note If using docker-compose: docker-compose logs