make docker image from 1GB to around 100MB

This commit is contained in:
2024-06-27 00:42:25 +02:00
parent 72762340ce
commit 9581a3ce2c
16 changed files with 2693 additions and 357 deletions

View File

@@ -1,8 +1,8 @@
#!/bin/bash
service dbus start
bluetoothd &
# service dbus start
# bluetoothd &
/bin/bash
/bin/sh
sudo python3 main.py

View File

@@ -1,4 +1,3 @@
bluepy
pyyaml
bs4
lxml

View File

@@ -6,21 +6,30 @@ from devices import Device
workdir, filename = os.path.split(os.path.abspath(__file__))
def log_to_txt(devices):
with open(f'{workdir}{os.sep}history.json', 'r') as file:
data = json.load(file)
def log_to_json(devices):
for device in devices:
dev, data_obj, from_config = device
data_obj: Data
from_config: Device
file_name = f'{workdir}{os.sep}data{os.sep}{str(data_obj.mac).replace(":", "-")}.json'
with open(f'{workdir}{os.sep}history.json', 'w') as file:
for device in devices:
dev, data_obj, from_config = device
data_obj:Data
from_config:Device
data.append({
"data": data_obj.to_json(),
"device": from_config.to_json()
})
final_data = {"measurements": data}
file.write(json.dumps(data, indent=2))
try:
with open(file_name, 'r') as file: data = json.load(file)
except:
with open(file_name, 'w') as file: file.write("[]")
data = []
data.append({
"timestamp": data_obj.timestamp,
"temperature": data_obj.temperature,
"humidity": data_obj.humidity,
"battery_percent": data_obj.battery_percent,
"battery_volt": data_obj.battery_volt,
"name": from_config.name,
"room": from_config.room
})
with open(file_name, 'w') as file: file.write(json.dumps(data, indent=2))
def log_to_mongodb(data):

View File

@@ -1,7 +1,7 @@
from discovery import start_discovery
from loop import start_loop
from log_data import log_to_txt
from log_data import log_to_json
devices = start_discovery()
log_to_txt(devices)
log_to_json(devices)