Create a deepstream-l4t docker container instance.
sudo docker run -it \
--rm \
--net=host \
--runtime nvidia \
-e DISPLAY=$DISPLAY \
| # -------------------------------------------------------- | |
| # Camera sample code for Tegra X2/X1 | |
| # | |
| # This program could capture and display video from | |
| # IP CAM, USB webcam, or the Tegra onboard camera. | |
| # Refer to the following blog post for how to set up | |
| # and run the code: | |
| # https://jkjung-avt.github.io/tx2-camera-with-python/ | |
| # | |
| # Written by JK Jung <[email protected]> |
| #!/usr/bin/env python3 | |
| # -*- coding:utf-8 -*- | |
| # GStreamer SDK Tutorials in Python | |
| # | |
| # basic-tutorial-2 | |
| # | |
| """ | |
| basic-tutorial-2: GStreamer concepts | |
| http://docs.gstreamer.com/display/GstSDK/Basic+tutorial+2%3A+GStreamer+concepts | |
| """ |
| version: '3.8' | |
| services: | |
| # Database - Mongo DB | |
| mongo: | |
| image: mongo | |
| environment: | |
| MONGO_INITDB_ROOT_USERNAME: helpdev | |
| MONGO_INITDB_ROOT_PASSWORD: 123456 |
A Docker compose to learn about MongoDB noSQL database.
With MongoExpress webUI (written with Node.js and express).
Docs:
mongosh| #!python3 | |
| """ | |
| Convert a requirements.txt file to a Poetry project. | |
| Just place in the root of your working directory and run! | |
| """ | |
| sourceFile = "./requirements.txt" | |
| import re | |
| import os |
| """Configure handlers and formats for application loggers.""" | |
| import logging | |
| import sys | |
| from pprint import pformat | |
| # if you dont like imports of private modules | |
| # you can move it to typing.py module | |
| from loguru import logger | |
| from loguru._defaults import LOGURU_FORMAT |
| Okay so here's the setup: | |
| [-] The primary server API is exposed via Flask (Python) and all static files, including all html, css, js is served by nginx. | |
| [-] Python is exposing an API at url http://domain.com/api/download/<file_id>, where file_id is a database id for the file that we're interested in downloading. | |
| 1. User wants to download a file, so we spawn a new window with the url '/api/download/<file_id>' | |
| 2. Nginx intercepts the request, sees that it starts with /api/, and then forwards the request to Flask, which is being served on port 5000. | |
| 3. Flask routes the request to its download method, retrieves the pertinent data from the file_id, and constructs additional header settings to make nginx happy and to force the browser to see the file stream as a download request instead of the browser just trying to open the file in a new window. Flask then returns the modified header stream to nginx | |
| 4. Nginx is finally ready to do some work. While parsing the headers for the incoming request, it encounters "X |
| # https://pawamoy.github.io/posts/unify-logging-for-a-gunicorn-uvicorn-app/ | |
| import sys | |
| import logging | |
| from loguru import logger | |
| __all__ = ("setup_logging",) | |
| _LOG_FORMAT = "{time:YYYY-MM-DD HH:mm:ss} <lvl>| {level: ^6} |</> {message}" |