yusing
7d17a01de1
refactor(agent): move agent pool to agent package, rename route.Agent() to route.GetAgent()
2025-06-14 20:04:39 +08:00
yusing
cabb840a91
tweak(docker): add hint when specified network not found
2025-06-14 19:32:36 +08:00
yusing
4825f768f3
feat(docker): allow specifying docker network, handle error when no network available
2025-06-14 17:08:07 +08:00
yusing
5fdb023188
feat(docker): add network field to container info
2025-06-14 10:05:45 +08:00
yusing
f8c57d930f
fix(docker): wildcard labels not applying properly for YAML style values and alias without labels
2025-06-13 23:02:25 +08:00
yusing
25fbcc4ab9
fix(label): expand wildcard labels before unmarshaling and add corresponding test
2025-06-09 20:46:39 +08:00
yusing
a39d527fc1
feat(idlesleep): support container dependencies, including custom and docker depends_on, code refactor
2025-06-04 23:26:38 +08:00
yusing
e39407886d
fix: improved docker image parsing
2025-06-04 23:00:53 +08:00
yusing
2628d9e8a8
fix(task): refactor task module and fix reload stuck/error, fix some logic
2025-05-28 22:07:13 +08:00
yusing
216c03c5ff
fix(task): revert to context based approach and fix tasks stuck, improve error handling
Docker Image CI (nightly) / build-nightly (push) Has been cancelled
Docker Image CI (nightly) / build-nightly-agent (push) Has been cancelled
2025-05-26 00:32:59 +08:00
Yuzerion
4a8bd48ad5
fix: optimize memory usage, fix agent and code refactor ( #118 )
...
Docker Image CI (socket-proxy) / build (push) Waiting to run
* refactor: simplify io code and make utils module independent
* fix(docker): agent and socket-proxy docker event flushing with modified reverse proxy handler
* refactor: remove unused code
* refactor: remove the use of logging module in most code
* refactor: streamline domain mismatch check in certState function
* tweak: use ecdsa p-256 for autocert
* fix(tests): update health check tests for invalid host and add case for port in host
* feat(acme): custom acme directory
* refactor: code refactor and improved context and error handling
* tweak: optimize memory usage under load
* fix(oidc): restore old user matching behavior
* docs: add ChatGPT assistant to README
---------
Co-authored-by: yusing <yusing@6uo.me>
2025-05-25 09:45:57 +08:00
yusing
8f9c76daa5
chore: update dependencies
2025-05-14 21:00:53 +08:00
yusing
e300170c51
fix: route autoconfiguration
2025-05-11 21:38:43 +08:00
yusing
c05059765d
style: coed cleanup and fix styling
2025-05-10 10:46:31 +08:00
yusing
1e80ad2a44
fix(docker): host network_mode port selection
2025-05-07 23:26:51 +08:00
yusing
c90ec8caa1
feat(container): add UpdatePorts method and support for host network mode
2025-05-06 20:27:25 +08:00
yusing
2c0349c11c
chore: remove debug statement
2025-04-30 00:14:53 +08:00
yusing
8e3c2cc8d4
fix: issues when using socket-proxy
2025-04-29 23:56:15 +08:00
yusing
7aa1215491
refactor: rename Deserialize to MapUnmarshalValidate
2025-04-29 07:26:14 +08:00
yusing
663a107c06
merge: main branch
2025-04-24 15:02:31 +08:00
yusing
08ee82d7b0
fix(docker): docker clients not being cached correctly
2025-04-24 06:29:19 +08:00
yusing
d2e2086540
fix: loading_page html
2025-03-29 08:21:26 +08:00
yusing
d105f866ff
feat: enhance idlewaker loading page design and add favicon handling in waker_http, removed unnecessary checkings
2025-03-29 08:18:58 +08:00
yusing
1c001ed9df
refactor: clean up logger and metric initialization flow
2025-03-29 02:59:40 +08:00
yusing
a7da8ffb90
refactor: clean up code and fix race condition in idlewatcher
2025-03-28 08:14:06 +08:00
yusing
3c515b0258
feat: predefined docker image blacklist, avoid proxing service backends, refactor
2025-03-28 08:14:06 +08:00
yusing
c6f65ba69f
feat: agent as docker provider, drop / reload routes when docker connection state changed, refactor
2025-03-28 08:14:06 +08:00
yusing
361931ed96
refactor: rename module 'err' to 'gperr' in references
2025-03-28 07:39:26 +08:00
yusing
9b2ee628aa
fix docker client data race on Close(), remove SharedClient.IsConnected
2025-03-01 15:47:08 +08:00
yusing
357ad26a0e
reduce docker client initiation
2025-03-01 15:39:25 +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