Coder Social home page Coder Social logo

Comments (15)

shrunbr avatar shrunbr commented on May 29, 2024 1

Everything is looking good! I set port: 8080 variable as you mentioned šŸ‘

patrol.yml config:

name: Test Status
db: /data/config/data.db
port: 8080

## Map consisting of services to display on your statuspage. Each service
## can have multiple checks.
## All check commands are simply run using the default shell (/bin/sh).
services:
  Ping:
    checks:
    - name: Google DNS Check
      interval: 60s
      cmd: 'ping 8.8.8.8'
    - name: Cloudflare DNS Check
      interval: 60s
      cmd: 'ping 1.1.1.1'
    - name: Firewall Check
      type: metric
      unit: ms
      interval: 60s
      cmd: 'ping 10.0.0.1'

from patrol.

shrunbr avatar shrunbr commented on May 29, 2024 1

I would be somewhat interested as long as there was a decent plan that was inexpensive or free. I think what really drives people towards this is the fact that it is self-hosted and free. There are some people who I'm sure would love it, others that wouldn't but as long as the code would remain open source and carry either at the same level as the hosted option or be a revision or two behind that would be acceptable :)

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Absolutely, thanks for the feedback! I appreciate you calling out the issues as you see them.

For the go binaries install: I'm getting that error as well. I will certainly look into that and get back to you.

For the docker run: it looks like it succeeded on your machine. If you do docker ps -a | grep patrol, are you able to see the patrol container running?

from patrol.

shrunbr avatar shrunbr commented on May 29, 2024

I've adjusted the title to reflect problems

So the container is constantly restarting itself

[root@usauto01 config]# docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS                          PORTS                    NAMES
3f8626764960        ghcr.io/karimsa/patrol:latest   "patrol run --configā€¦"   51 seconds ago      Restarting (1) 20 seconds ago                            patrol

I've modified the docker run command to get it to a better place for my needs. (See below). I'm mapping /etc/patrol to the internal data folder of the container. The /etc/patrol folder on the host machine contains the patrol.yml file.

docker run -d \
 --name patrol \
 --restart=on-failure \
 -v "/etc/patrol:/data" \
 -p 80:8080 \
 --log-driver json-file \
 --log-opt max-size=1000m \
 ghcr.io/karimsa/patrol:latest \
 run \
 --config /data/config/patrol.yml

After making that change things got a bit better

[root@usauto01 ~]# docker logs patrol
2021/04/02 03:32:33 Initializing with SHELL = /bin/sh
open /data/config/patrol.yml: permission denied
2021/04/02 03:32:33 Initializing with SHELL = /bin/sh
open /data/config/patrol.yml: permission denied
2021/04/02 03:32:34 Initializing with SHELL = /bin/sh
open /data/config/patrol.yml: permission denied
2021/04/02 03:32:35 Initializing with SHELL = /bin/sh
open /data/config/patrol.yml: permission denied
2021/04/02 03:32:37 Initializing with SHELL = /bin/sh
open /data/config/patrol.yml: permission denied
2021/04/02 03:32:39 Initializing with SHELL = /bin/sh
open /data/config/patrol.yml: permission denied

I got past the permission denied error by setting chmod 777 on the patrol.yml file (temporary for troubleshooting). After allowing global access to the file I started to receive errors regarding the db file.

[root@usauto01 ~]# docker logs patrol
2021/04/02 03:38:33 Initializing with SHELL = /bin/sh
open data.db: permission denied
2021/04/02 03:38:34 Initializing with SHELL = /bin/sh
open data.db: permission denied
2021/04/02 03:38:35 Initializing with SHELL = /bin/sh
open data.db: permission denied
2021/04/02 03:38:36 Initializing with SHELL = /bin/sh
open data.db: permission denied
2021/04/02 03:38:37 Initializing with SHELL = /bin/sh
open data.db: permission denied

The data.db file obviously didn't exist in the /etc/patrol folder so I ran touch data.db within the folder and chmod 777'd the file. Still to only receive the same error.

What's the best way to go about getting this resolved? In the original docker config that you have on the README.md file doesn't map a config folder to the container. If the container auto runs out of /data that makes sense but when you feed it the variable you have tying $PWD :/data and then having a config/patrol.yml file there the same thing ensues.

Original docker run command:

docker run -d \
 --name patrol \
 --restart=on-failure \
 -v "$PWD:/data" \
 -p 80:8080 \
 --log-driver json-file \
 --log-opt max-size=1000m \
 ghcr.io/karimsa/patrol:latest \
 run \
 --config /config/patrol.yml

So because I'm logged into this system as root, $PWD:/data will map /data in the container to /root on the machine. Here's the folder and file created.

[root@usauto01 config]# ls
patrol.yml
[root@usauto01 config]# pwd
/root/config
[root@usauto01 config]#

Contents of the patrol.yml file (very basic, trying to get the container to keep running)

name: Test Status
db: data.db

## Map consisting of services to display on your statuspage. Each service
## can have multiple checks.
## All check commands are simply run using the default shell (/bin/sh).
services:
  Ping:
    checks:
    - name: Google DNS Check
      interval: 60s
      cmd: 'ping 8.8.8.8'
    - name: Cloudflare DNS Check
      interval: 60s
      cmd: 'ping 1.1.1.1'
    - name: Firewall Check
      type: metric
      unit: ms
      interval: 60s
      cmd: 'ping 10.0.0.1'

Running the above docker command and all the output

[root@usauto01 ~]# pwd
/root
[root@usauto01 ~]# docker run -d \
>  --name patrol \
>  --restart=on-failure \
>  -v "$PWD:/data" \
>  -p 80:8080 \
>  --log-driver json-file \
>  --log-opt max-size=1000m \
>  ghcr.io/karimsa/patrol:latest \
>  run \
>  --config /config/patrol.yml
6c71736d6410c6ea354113e509096f710d1deffd49b7cc98bf1699f9f9860570
[root@usauto01 ~]# docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS                  PORTS                    NAMES
6c71736d6410        ghcr.io/karimsa/patrol:latest   "patrol run --configā€¦"   2 seconds ago       Up Less than a second   0.0.0.0:80->8080/tcp     patrol
e92f463b4f80        pykmsorg/py-kms                 "/bin/sh -c '/usr/biā€¦"   3 days ago          Up 8 hours              0.0.0.0:1688->1688/tcp   py-kms
[root@usauto01 ~]# docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS                        PORTS                    NAMES
6c71736d6410        ghcr.io/karimsa/patrol:latest   "patrol run --configā€¦"   4 seconds ago       Restarting (1) 1 second ago                            patrol
e92f463b4f80        pykmsorg/py-kms                 "/bin/sh -c '/usr/biā€¦"   3 days ago          Up 8 hours                    0.0.0.0:1688->1688/tcp   py-kms
[root@usauto01 ~]# docker logs patrol
2021/04/02 03:49:00 Initializing with SHELL = /bin/sh
open /config/patrol.yml: no such file or directory
2021/04/02 03:49:01 Initializing with SHELL = /bin/sh
open /config/patrol.yml: no such file or directory
2021/04/02 03:49:02 Initializing with SHELL = /bin/sh
open /config/patrol.yml: no such file or directory
2021/04/02 03:49:03 Initializing with SHELL = /bin/sh
open /config/patrol.yml: no such file or directory
2021/04/02 03:49:04 Initializing with SHELL = /bin/sh
open /config/patrol.yml: no such file or directory
2021/04/02 03:49:07 Initializing with SHELL = /bin/sh
open /config/patrol.yml: no such file or directory

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Alright, I think I see some of the issues.

Can you try updating your db: config to point to the absolute path? (i.e. db: /data/config/data.db) - patrol is not resolving the path relative to the config file, it is resolving it relative to the current directory (definitely a bug).

from patrol.

shrunbr avatar shrunbr commented on May 29, 2024

I get a permission denied error when it attempts to bind to the port. I attempted to fix this, via the dockerfile using RUN apk add libcap && setcap 'cap_net_bind_service=+ep' /usr/local/bin/patrol after the copy happens from /tmp/patrol to /usr/local/bin/patrol but for whatever reason when I build from source even without that command it just tells me it can't find my config file (using the same docker run command below, just replaced the image with my built image ID)

[root@usauto01 ~]# docker run -d \
>  --name patrol \
>  --restart=on-failure \
>  -v "/etc/patrol:/data" \
>  -p 80:8080 \
>  --log-driver json-file \
>  --log-opt max-size=1000m \
>  ghcr.io/karimsa/patrol:latest \
>  run \
>  --config /data/config/patrol.yml
e0c0195416dddf87a9359d783f8e68de6fe9ff534d44d49212613b241cd90a55
[root@usauto01 ~]# docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS                                  PORTS                    NAMES
e0c0195416dd        ghcr.io/karimsa/patrol:latest   "patrol run --configā€¦"   2 seconds ago       Restarting (2) Less than a second ago                            patrol
e92f463b4f80        pykmsorg/py-kms                 "/bin/sh -c '/usr/biā€¦"   4 days ago          Up 36 hours                             0.0.0.0:1688->1688/tcp   py-kms
[root@usauto01 ~]# docker logs patrol
2021/04/03 07:53:50 Initializing with SHELL = /bin/sh
2021/04/03 07:53:50 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 22 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc000216480)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/03 07:53:51 Initializing with SHELL = /bin/sh
2021/04/03 07:53:51 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 22 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc000218380)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/03 07:53:52 Initializing with SHELL = /bin/sh
2021/04/03 07:53:52 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 53 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc000216380)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/03 07:53:53 Initializing with SHELL = /bin/sh
2021/04/03 07:53:53 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 23 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc000146500)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/03 07:53:55 Initializing with SHELL = /bin/sh
2021/04/03 07:53:55 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 22 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc00019a400)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/03 07:53:57 Initializing with SHELL = /bin/sh

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Try using the image without the pcap modification. Instead, maybe try to bind to a port > 1024. I use 8080 in my config.

from patrol.

shrunbr avatar shrunbr commented on May 29, 2024

Yeah I did that, when I build even without the pcap modification no matter what I do the app just tells me it can't find my files (permissions were adjusted to 777 for testing).

See below for using port 8080 on install, for whatever reason the app still wants to use 80.

Note ghcr.io/karimsa/patrol:latest as the image below

[root@usauto01 ~]# docker run -d \
>  --name patrol \
>  --restart=on-failure \
>  -v "/etc/patrol:/data" \
>  -p 8080:8080 \
>  --log-driver json-file \
>  --log-opt max-size=1000m \
>  ghcr.io/karimsa/patrol:latest \
>  run \
>  --config config/patrol.yml
935ee274d5cc078009129d41328e623e9b22446676217ed1a9ade688671de9df
[root@usauto01 ~]# docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS                  PORTS                    NAMES
935ee274d5cc        ghcr.io/karimsa/patrol:latest   "patrol run --configā€¦"   2 seconds ago       Up Less than a second   0.0.0.0:8080->8080/tcp   patrol
e92f463b4f80        pykmsorg/py-kms                 "/bin/sh -c '/usr/biā€¦"   5 days ago          Up 2 days               0.0.0.0:1688->1688/tcp   py-kms
[root@usauto01 ~]# docker ps
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS                                  PORTS                    NAMES
935ee274d5cc        ghcr.io/karimsa/patrol:latest   "patrol run --configā€¦"   4 seconds ago       Restarting (2) Less than a second ago                            patrol
e92f463b4f80        pykmsorg/py-kms                 "/bin/sh -c '/usr/biā€¦"   5 days ago          Up 2 days                               0.0.0.0:1688->1688/tcp   py-kms
[root@usauto01 ~]# docker logs patrol
2021/04/04 01:21:10 Initializing with SHELL = /bin/sh
2021/04/04 01:21:10 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 11 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc000122500)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/04 01:21:11 Initializing with SHELL = /bin/sh
2021/04/04 01:21:11 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 22 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc000196500)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/04 01:21:12 Initializing with SHELL = /bin/sh
2021/04/04 01:21:12 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 24 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc0000e6580)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/04 01:21:13 Initializing with SHELL = /bin/sh
2021/04/04 01:21:13 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 10 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc000068480)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/04 01:21:15 Initializing with SHELL = /bin/sh
2021/04/04 01:21:15 Config: {
        "Name": "Test Status",
        "Port": 80,
        "HTTPS": {
                "Cert": "",
                "Key": "",
                "Port": 0
        },
        "DB": "/data/config/data.db",
        "LogLevel": "info",
        "Compact": {
                "Interval": 0,
                "MaxWrites": 0
        },
        "Services": {
                "Ping": {
                        "Checks": [
                                {
                                        "Name": "Google DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 8.8.8.8",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Cloudflare DNS Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 1.1.1.1",
                                        "Type": "boolean",
                                        "MetricUnit": ""
                                },
                                {
                                        "Name": "Firewall Check",
                                        "Interval": 60000000000,
                                        "Timeout": 180000000000,
                                        "Cmd": "ping 10.0.0.1",
                                        "Type": "metric",
                                        "MetricUnit": "ms"
                                }
                        ],
                        "OnFailure": null,
                        "OnRecovered": null,
                        "OnSuccess": null
                }
        },
        "OnFailure": null,
        "OnRecovered": null,
        "OnSuccess": null
}
panic: listen tcp :80: bind: permission denied

goroutine 10 [running]:
github.com/karimsa/patrol.(*Patrol).Start.func1(0xc00006a580)
        /app/patrol.go:207 +0x245
created by github.com/karimsa/patrol.(*Patrol).Start
        /app/patrol.go:182 +0xa5
2021/04/04 01:21:17 Initializing with SHELL = /bin/sh

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Is this with port: 8080 set in the patrol config file?

from patrol.

shrunbr avatar shrunbr commented on May 29, 2024

It was not, I didn't know that's what you meant. I don't see a predefined port variable in the example config. I'll give that a shot a report back.

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Sorry about that - I should have been more clear. Let me know if that works out for you.

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Happy to hear that! I'll update the README to reflect this limitation as well as make a note of the other issues you mentioned!

Quick question: If there was a hosted version of patrol, would that interest you? Somewhere where you just specify the list of commands and the page is up and running for you? I'm thinking of building it and would love some feedback. If what interests you about patrol is the ability to self-host, then no worries as well!

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Thanks for your feedback! šŸ™‚

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Your contributions are now merged in & the CI has published the new images! I've also added tags to publish for raspberry pi editions using the docker file you contributed - documented in the README.

I also went ahead and changed the default patrol port from 80 to 8080.

Could you please verify that the changes work for you? And that the new image is running for you?

from patrol.

karimsa avatar karimsa commented on May 29, 2024

Closing due to inactivity. If the issue persists, feel free to reopen.

from patrol.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    šŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. šŸ“ŠšŸ“ˆšŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ā¤ļø Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.