yusing
d4d2efe925
idlewatcher/waker: refactor
2025-03-08 07:59:10 +08:00
yusing
1078731f2d
docker: refactor container related code
2025-03-08 07:10:53 +08:00
yusing
1739afae24
idlewatcher/waker: refactor, cleanup and fix
2025-03-08 07:06:57 +08:00
yusing
34a3739545
docker: fix docker client data race on Close()
2025-03-01 16:04:39 +08:00
yusing
767560804d
idlewatcher: refactor and fix data race
2025-02-25 04:29:07 +08:00
yusing
9925b042d8
bring back database check
2025-02-24 08:46:59 +08:00
yusing
1d16d514c7
fix empty homepage name, incorrect image parsing, refactor
2025-02-24 08:42:10 +08:00
yusing
bda547198e
improved docker reconnect mechanism, removed redundant checkings, refactor
2025-02-24 07:50:23 +08:00
yusing
b7e9a85be0
implement docker image blacklist
2025-02-24 06:47:07 +08:00
yusing
080c1cee4f
replace deprecated docker types
2025-02-24 06:10:46 +08:00
yusing
3e1a7a0dc5
docker: clear routes on docker disconnect, reload routes on connection restore
2025-02-23 13:11:21 +08:00
yusing
2b51c47846
reduce docker client initiation
2025-02-20 18:02:34 +08:00
yusing
18d258aaa2
refactor and organize code
2025-02-15 05:44:47 +08:00
yusing
c807b30c8f
api: remove service health from prometheus, implement godoxy metrics
2025-02-12 05:30:34 +08:00
yusing
71619042fd
fix agent hot-reload issue and added list agents endpoint
2025-02-11 12:45:34 +08:00
yusing
429a77de8e
refactor, fix reload error when using agents, and other small improvements
2025-02-11 12:15:51 +08:00
yusing
b1f72620dc
refactor and properly set idlewaker error in JSON output
2025-02-11 10:14:32 +08:00
yusing
07bce90521
fixed some issues
2025-02-11 09:16:21 +08:00
yusing
eaf191e350
implement godoxy-agent
2025-02-11 01:10:09 +08:00
Yuzerion
1a5f3735cf
Feat/fileserver ( #60 )
...
* cleanup code for URL type
* fix makefile for trace mode
* refactor, merge Entry, RawEntry and Route into one.
* Implement fileserver.
* refactor: rename HTTPRoute to ReverseProxyRoute to avoid confusion
* refactor: move metrics logger to middleware package
- fix prometheus metrics for load balanced routes
- route will now fail when health monitor fail to start
* fix extra output of ls-* commands by defer initializaing stuff, speed up start time
* add test for path traversal attack, small fix on FileServer.Start method
* rename rule.on.bypass to pass
* refactor and fixed map-to-map deserialization
* updated route loading logic
* schemas: add "add_prefix" option to modify_request middleware
* updated route JSONMarshalling
---------
Co-authored-by: yusing <yusing@6uo.me>
2025-02-06 18:23:10 +08:00
yusing
bbc10cb105
fix serialization, added benchmark tests, updated next release docs
2025-01-26 15:08:10 +08:00
yusing
b984386bab
fix: high cpu usage
2025-01-22 05:44:04 +08:00
yusing
5d3a93f103
idlewatcher: fix visiting unhealthy idle watched container causes panic
2025-01-21 10:37:09 +08:00
yusing
dd0bbdc7b4
fix logs not printing correctly, removed unneccessary loggers
2025-01-20 17:42:54 +08:00
yusing
1adba05065
api: add /v1/health/ws for health bubbles on dashboard
2025-01-19 04:34:20 +08:00
Yuzerion
589b3a7a13
Feat/auto schemas ( #48 )
...
* use auto generated schemas
* go version bump and dependencies upgrade
* clarify some error messages
---------
Co-authored-by: yusing <yusing@6uo.me>
2025-01-19 00:37:17 +08:00
yusing
3f85d7f813
container now consider explicit if any proxy label defined
2025-01-12 22:31:43 +08:00
yusing
2c3672a7ea
idlewatfcher: add proper Cache-Control Headers to response
2025-01-12 13:16:58 +08:00
yusing
bc1702e6cf
refactoring: moved reverse_proxy to separate package to avoid import cycle
2025-01-08 13:50:34 +08:00
Peter Olds
7fedd5729e
feat: Add optional StartEndpoint support for idle watcher
...
Optionally allow a user to specify a “warm-up” endpoint to start the container, returning a 403 if the endpoint isn’t hit and the container has been stopped.
This can help prevent bots from starting random containers, or allow health check systems to run some probes.
2025-01-08 11:01:10 +08:00
yusing
c506db1ef4
refactor
2025-01-03 18:55:44 +08:00
yusing
b38bff41d8
support inline yaml for docker labels, serveral minor fixes
2025-01-03 15:35:40 +08:00
yusing
cd74b76483
fix reload stuck
2025-01-03 03:30:07 +08:00
yusing
a0a81240ce
fix idlewatcher nil dereference
2025-01-01 14:25:44 +08:00
yusing
1ab34ed46f
simplify task package implementation
2025-01-01 06:07:32 +08:00
yusing
e7be27413c
small string split join optimization
2024-12-19 00:54:31 +08:00
yusing
6aefe4d5d9
replace all schema check with go-playground/validator/v10
2024-12-18 04:48:29 +08:00
yusing
00f60a6e78
feature: accesslogger
2024-12-18 03:09:46 +08:00
yusing
34858a1ba0
fix prometheus metrics gone after route changes
2024-12-18 00:54:04 +08:00
yusing
c5d96f96e1
replace unnecessary Task interface with struct
2024-12-17 10:33:21 +08:00
yusing
4d94d12e9c
fixed / suppressed (irrelevant) golangci-lint errors
2024-12-17 10:33:21 +08:00
yusing
5d5c623f09
small refactor and fixes
2024-12-03 11:45:10 +08:00
yusing
fb9de4c4ad
added ping latency to healthcheck result
2024-11-30 06:43:47 +08:00
yusing
e1cac9f92f
update validateSignal
2024-11-28 06:56:23 +08:00
yusing
d723403b6b
modules reorganized and code refactor
2024-11-25 01:40:12 +08:00
yusing
f3b21e6bd9
refactor health module
2024-11-13 06:46:01 +08:00
yusing
64728d10ad
fixed incorrect healthcheck result in some cases, healthchecker now send user agent identifying godoxy
2024-11-11 06:37:05 +08:00
yusing
c07f2ed722
fixed healthchecker start even if disabled, simplified label parsing
2024-11-11 06:34:12 +08:00
yusing
6194bac4c4
metric unregistration on route removal, fixed multi-ips as visitor label detected from x headers
2024-11-10 06:47:59 +08:00
yusing
6712e9b109
initial prometheus metrics support, simplfied some code
2024-11-06 12:24:12 +08:00