feat: Add Fichero D11s thermal label printer support with REST API and CLI
- Implemented a new module for the Fichero D11s thermal label printer, including BLE and Classic Bluetooth interfaces. - Created a REST API using FastAPI to manage printer status, info, and printing tasks (text and images). - Developed a CLI for direct printer interaction, allowing users to print text and images, check status, and modify settings. - Added image processing capabilities for converting text and images to the required format for printing. - Introduced error handling for printer operations and connection management. - Included a shell script for running the API server with configurable parameters. - Added English translations for configuration options. - Created a repository metadata file for project management.
This commit is contained in:
30
fichero_printer/Dockerfile
Normal file
30
fichero_printer/Dockerfile
Normal file
@@ -0,0 +1,30 @@
|
||||
ARG BUILD_FROM
|
||||
FROM $BUILD_FROM
|
||||
|
||||
# Install Bluetooth system libraries (BlueZ for BLE/RFCOMM)
|
||||
RUN apk add --no-cache \
|
||||
bluez \
|
||||
bluez-deprecated \
|
||||
dbus
|
||||
|
||||
# Install Python runtime dependencies
|
||||
RUN pip3 install --no-cache-dir --break-system-packages \
|
||||
"bleak>=0.21" \
|
||||
"numpy" \
|
||||
"pillow" \
|
||||
"fastapi>=0.111" \
|
||||
"uvicorn[standard]>=0.29" \
|
||||
"python-multipart>=0.0.9"
|
||||
|
||||
# Copy the fichero Python package into the container
|
||||
WORKDIR /app
|
||||
COPY fichero/ /app/fichero/
|
||||
|
||||
# Make the package importable without installation
|
||||
ENV PYTHONPATH=/app
|
||||
|
||||
# Copy and register the startup script
|
||||
COPY run.sh /usr/bin/run.sh
|
||||
RUN chmod +x /usr/bin/run.sh
|
||||
|
||||
CMD ["/usr/bin/run.sh"]
|
||||
Reference in New Issue
Block a user