mirror of
https://github.com/vmorganp/Lazytainer.git
synced 2026-01-01 02:17:21 +01:00
49 lines
1.6 KiB
Markdown
49 lines
1.6 KiB
Markdown
# Lazytainer
|
|
Putting your containers to sleep
|
|
|
|
*I don't really wanna do the work today*
|
|
|
|
---
|
|
|
|
## How it works
|
|
### Lazy loading containers
|
|
monitor network traffic for active connections and recieved packets ,
|
|
if traffic looks to be idle, your container stops
|
|
if it looks like you're trying to access a stopped container, it starts
|
|
|
|
### Want to test it?
|
|
```
|
|
$ git clone https://github.com/vmorganp/Lazytainer
|
|
$ cd Lazytainer
|
|
$ docker-compose up
|
|
```
|
|
|
|
### Or put in your docker compose
|
|
```
|
|
lazytainer:
|
|
container_name: lazytainer
|
|
image: ghcr.io/vmorganp/lazytainer:master
|
|
environment:
|
|
- PORT=81,82 # comma separated list of ports...or just the one
|
|
- LABEL=lazytainer # value of lazytainer.marker for other containers that lazytainer checks
|
|
# - TIMEOUT=30 # OPTIONAL number of seconds to let container idle
|
|
# - RXHISTLENGTH=10 # OPTIONAL number of seconds to keep rx history, uptime is calculated as first item and last item from this and must have a gap of at least $MINPACKETTHRESH
|
|
# - MINPACKETTHRESH=10 # OPTIONAL number of packets that must be recieved to keepalive/start container
|
|
ports:
|
|
- 81:81
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
|
|
whoami1:
|
|
container_name: whoami1
|
|
image: containous/whoami
|
|
command: --port 81 # make this run on the port passed through on lazytainer
|
|
network_mode: service:lazytainer
|
|
depends_on:
|
|
- lazytainer # wait for lazytainer to start before starting
|
|
labels:
|
|
- "lazytainer.marker=lazytainer" # required label to make it work
|
|
```
|
|
|
|
## TODO
|
|
- improve logging - verbosity flags |