\n
Your Docusaurus site did not load properly.
\n
A very common reason is a wrong site baseUrl configuration.
\n
Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}
\n
We suggest trying baseUrl =
\n
\n`}(e)).replace(/{if("undefined"==typeof document)return void o();const n=document.createElement("link");n.setAttribute("rel","prefetch"),n.setAttribute("href",e),n.onload=()=>t(),n.onerror=()=>o();const a=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;a?.appendChild(n)}))}:function(e){return new Promise(((t,o)=>{const n=new XMLHttpRequest;n.open("GET",e,!0),n.withCredentials=!0,n.onload=()=>{200===n.status?t():o()},n.send(null)}))};var V=o(205304);const X=new Set,K=new Set,Y=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ee={prefetch(e){if(!(e=>!Y()&&!K.has(e)&&!X.has(e))(e))return!1;X.add(e);const t=(0,p.f)(d.Z,e).flatMap((e=>{return t=e.route.path,Object.entries(Q).filter((e=>{let[o]=e;return o.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,V.Z)(t))}));var t}));return Promise.all(t.map((e=>{const t=o.gca(e);return t&&!t.includes("undefined")?W(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!Y()&&!K.has(e))(e)&&(K.add(e),P(e))},te=Object.freeze(ee),oe=Boolean(!0);if(s.Z.canUseDOM){window.docusaurus=te;const e=document.getElementById("__docusaurus"),t=(0,u.jsx)(r.B6,{children:(0,u.jsx)(i.VK,{children:(0,u.jsx)(U,{})})}),o=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},s=()=>{if(oe)n.startTransition((()=>{a.hydrateRoot(e,t,{onRecoverableError:o})}));else{const i=a.createRoot(e,{onRecoverableError:o});n.startTransition((()=>{i.render(t)}))}};P(window.location.pathname).then(s)}},980694:(e,t,o)=>{"use strict";o.d(t,{_:()=>p,M:()=>u});var n=o(667294),a=o(636809);const i=JSON.parse('{"docusaurus-plugin-google-gtag":{"default":{"trackingID":["G-P74BDWF0C6"],"anonymizeIP":false,"id":"default"}},"docusaurus-plugin-content-docs":{"default":{"path":"/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/docs","mainDocId":"intro","docs":[{"id":"Automation_and_Robotics/Home_Automation/2018-10-28--nodered-getting-started/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-10-28--nodered-getting-started/2018-10-28","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-01--openhab2-mqtt-nodered/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-01--openhab2-mqtt-nodered/2018-11-01","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-05--nodered-cryptocurrency-dashboard/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-05--nodered-cryptocurrency-dashboard/2018-11-05","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-12--nodered-sqlite/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-12--nodered-sqlite/2018-11-12","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-13--nodered-ifttt/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-13--nodered-ifttt/2018-11-13","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-17--nodered-mqtt-connect/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-17--nodered-mqtt-connect/2018-11-17","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-20--nodered-http-connect/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-20--nodered-http-connect/2018-11-20","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-21--nodered-dashboard-getting-started/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-21--nodered-dashboard-getting-started/2018-11-21","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-23--node-red-flows/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-23--node-red-flows/2018-11-23","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-24--node-red-webhooks/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-24--node-red-webhooks/2018-11-24","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-25--webhooks-with-url-queries/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-25--webhooks-with-url-queries/2018-11-25","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-26--node-red-and-live-video/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-26--node-red-and-live-video/2018-11-26","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-27--node-red-sql-logging/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-27--node-red-sql-logging/2018-11-27","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-28--node-red-on-android/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-28--node-red-on-android/2018-11-28","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-29--node-red-and-mqtt/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-29--node-red-and-mqtt/2018-11-29","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-11-30--home-assistant-on-debian/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-11-30--home-assistant-on-debian/2018-11-30","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2018-12-01--openhab2-on-debian/index","path":"/docs/Automation_and_Robotics/Home_Automation/2018-12-01--openhab2-on-debian/2018-12-01","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-01-05--zigbee2mqtt-xiaomi-fhem/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-01-05--zigbee2mqtt-xiaomi-fhem/2019-01-05","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-02-07--motioneye-on-debian/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-02-07--motioneye-on-debian/2019-02-07","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-02-08--shinobi-on-debian/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-02-08--shinobi-on-debian/2019-02-08","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-02-09--zoneminder-in-docker/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-02-09--zoneminder-in-docker/2019-02-09","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-02-11--loxone-miniserver/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-02-11--loxone-miniserver/2019-02-11","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-02-15--ifttt-ip-camera/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-02-15--ifttt-ip-camera/2019-02-15","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-02-16--ifttt-ip-camera-alarmserver/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-02-16--ifttt-ip-camera-alarmserver/2019-02-15","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-03-26--writing-a-homey-app/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-03-26--writing-a-homey-app/2019-03-26","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-09-23--mqtt-camera-ai-video-security/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-09-23--mqtt-camera-ai-video-security/2019-09-23","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-09-24--iobroker-podman-centos8/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-09-24--iobroker-podman-centos8/2019-09-24","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-09-24--motioneye-podman-centos8/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-09-24--motioneye-podman-centos8/2019-09-24","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-09-27--home-assistant-podman-centos8/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-09-27--home-assistant-podman-centos8/2019-09-27","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-09-28--node-red-homekit-containerized/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-09-28--node-red-homekit-containerized/2019-09-28","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2019-12-01--podman-hombridge-to-mqtt/index","path":"/docs/Automation_and_Robotics/Home_Automation/2019-12-01--podman-hombridge-to-mqtt/2019-12-01","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2020-09-15--mock-rest-api-with-nodered/index","path":"/docs/Automation_and_Robotics/Home_Automation/2020-09-15--mock-rest-api-with-nodered/2020-09-16","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2020-09-16--testing-new-rest-api-with-nodered/index","path":"/docs/Automation_and_Robotics/Home_Automation/2020-09-16--testing-new-rest-api-with-nodered/2020-09-16","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2020-12-01--openhab3-in-docker/index","path":"/docs/Automation_and_Robotics/Home_Automation/2020-12-01--openhab3-in-docker/2020-12-01","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2020-12-02--openhab3-mqtt-binding/index","path":"/docs/Automation_and_Robotics/Home_Automation/2020-12-02--openhab3-mqtt-binding/2020-12-02","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2020-12-03--openhab3-camera-binding/index","path":"/docs/Automation_and_Robotics/Home_Automation/2020-12-03--openhab3-camera-binding/2020-12-03","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-07-10-home-assistant-mqtt-autodiscovery-part-i/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-07-10-home-assistant-mqtt-autodiscovery-part-i/2022-07-10","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-07-11-home-assistant-mqtt-autodiscovery-part-ii/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-07-11-home-assistant-mqtt-autodiscovery-part-ii/2022-07-11","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-07-12-home-assistant-mqtt-python/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-07-12-home-assistant-mqtt-python/2022-07-12","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-07-15-node-red-mqtt-homie/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-07-15-node-red-mqtt-homie/2022-07-15","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-07-16-openhab-mqtt-homie/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-07-16-openhab-mqtt-homie/2022-07-16","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-07-17-node-red-for-mqtt-autodiscovery/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-07-17-node-red-for-mqtt-autodiscovery/2022-07-17","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-10-18-camera-ui-docker/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-10-18-camera-ui-docker/2022-10-18","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-12-15--rtsp-to-hls-ffmpeg/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-12-15--rtsp-to-hls-ffmpeg/2022-12-15","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2022-12-22--grafana-for-iot/index","path":"/docs/Automation_and_Robotics/Home_Automation/2022-12-22--grafana-for-iot/2022-12-22","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2023-01-23-thread-edge-router-docker/index","path":"/docs/Automation_and_Robotics/Home_Automation/2023-01-23-thread-edge-router-docker/2023-01-23","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2023-01-23-thread-edge-router/index","path":"/docs/Automation_and_Robotics/Home_Automation/2023-01-23-thread-edge-router/2023-01-23","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2023-02-07-python-home-security/index","path":"/docs/Automation_and_Robotics/Home_Automation/2023-02-07-python-home-security/2023-02-07","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2023-04-17-home-assistant-mqtt-autodiscovery-part-iii/index","path":"/docs/Automation_and_Robotics/Home_Automation/2023-04-17-home-assistant-mqtt-autodiscovery-part-iii/2023-04-17","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2023-04-18--home-assistant-node-red-iobroker-docker/index","path":"/docs/Automation_and_Robotics/Home_Automation/2023-04-18--home-assistant-node-red-iobroker-docker/2023-04-18","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2024-01-09--home-assistant-rtsptoweb/index","path":"/docs/Automation_and_Robotics/Home_Automation/2024-01-09--home-assistant-rtsptoweb/2024-01-09","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Home_Automation/2024-01-10--go2rtc/index","path":"/docs/Automation_and_Robotics/Home_Automation/2024-01-10--go2rtc/2024-01-09","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-03--mqtt-debugging/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-03--mqtt-debugging/2019-08-03","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-04--mqtt-android-dashboards/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-04--mqtt-android-dashboards/2019-08-04","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-05--mqtt-openhab2/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-05--mqtt-openhab2/2019-08-05","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-06--mqtt-node-red/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-06--mqtt-node-red/2019-08-06","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-07--mqtt-iobroker/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-07--mqtt-iobroker/2019-08-07","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-08--mqtt-homematic/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-08--mqtt-homematic/2019-08-08","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-09--mqtt-homee/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-09--mqtt-homee/2019-08-09","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-10--mqtt-athom-homey/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-10--mqtt-athom-homey/2019-08-10","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2019-08-11--mqtt-home-assistant/index","path":"/docs/Automation_and_Robotics/MQTT/2019-08-11--mqtt-home-assistant/2019-08-11","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2021-09-12--golang-paho-mqtt/index","path":"/docs/Automation_and_Robotics/MQTT/2021-09-12--golang-paho-mqtt/2021-09-12","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-02-01--mosquitto-2-broker/index","path":"/docs/Automation_and_Robotics/MQTT/2022-02-01--mosquitto-2-broker/2022-02-01","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-03-26--mqtt-clients/index","path":"/docs/Automation_and_Robotics/MQTT/2022-03-26--mqtt-clients/2022-03-26","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-03-27--build-mosquitto-from-source/index","path":"/docs/Automation_and_Robotics/MQTT/2022-03-27--build-mosquitto-from-source/2022-03-27","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-03-28--mqtt-message-server/index","path":"/docs/Automation_and_Robotics/MQTT/2022-03-28--mqtt-message-server/2022-03-28","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-03-30--mqtt-with-rabbit-mq/index","path":"/docs/Automation_and_Robotics/MQTT/2022-03-30--mqtt-with-rabbit-mq/2022-03-30","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-06-23-instar-mqtt-python-part-I/index","path":"/docs/Automation_and_Robotics/MQTT/2022-06-23-instar-mqtt-python-part-I/2022-06-23","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-07-21-rust-hello-world/index","path":"/docs/Automation_and_Robotics/MQTT/2022-07-21-rust-hello-world/2022-07-21","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-07-22-go-hello-world/index","path":"/docs/Automation_and_Robotics/MQTT/2022-07-22-go-hello-world/2022-07-22","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-07-23-mosquitto-broker-compilation/index","path":"/docs/Automation_and_Robotics/MQTT/2022-07-23-mosquitto-broker-compilation/2022-07-23","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2022-07-24-mosquitto-broker-cross-compilation/index","path":"/docs/Automation_and_Robotics/MQTT/2022-07-24-mosquitto-broker-cross-compilation/2022-07-24","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/MQTT/2023-07-25-emqx-mqtt-broker-docker/index","path":"/docs/Automation_and_Robotics/MQTT/2023-07-25-emqx-mqtt-broker-docker/2023-07-25","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Robotics_Simulation/2023-11-19--ros2-gazebo-installation/index","path":"/docs/Automation_and_Robotics/Robotics_Simulation/2023-11-19--ros2-gazebo-installation/2023-11-19","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Robotics_Simulation/2023-11-24--ros2-graph/index","path":"/docs/Automation_and_Robotics/Robotics_Simulation/2023-11-24--ros2-graph/2023-11-24","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Robotics_Simulation/2023-11-26--ros2-gazebo-simulation/index","path":"/docs/Automation_and_Robotics/Robotics_Simulation/2023-11-26--ros2-gazebo-simulation/2023-11-26","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Robotics_Simulation/2023-11-26--ros2-webots/index","path":"/docs/Automation_and_Robotics/Robotics_Simulation/2023-11-26--ros2-webots/2023-11-26","sidebar":"tutorialSidebar"},{"id":"Automation_and_Robotics/Robotics_Simulation/2023-12-16--tellopy-drone-api/index","path":"/docs/Automation_and_Robotics/Robotics_Simulation/2023-12-16--tellopy-drone-api/2023-12-16","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-02-21-gofiber-container-gatsby/index","path":"/docs/Development/Go/2021-02-21-gofiber-container-gatsby/2021-02-21","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-06-03--mqtt-with-golang/index","path":"/docs/Development/Go/2021-06-03--mqtt-with-golang/2021-06-03","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-09-10--go-websockets/index","path":"/docs/Development/Go/2021-09-10--go-websockets/2021-09-10","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-09-11--golang-refresher-fmt-strings/index","path":"/docs/Development/Go/2021-09-11--golang-refresher-fmt-strings/2021-09-11","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-09-11--golang-refresher-math-os/index","path":"/docs/Development/Go/2021-09-11--golang-refresher-math-os/2021-09-11","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-09-11--golang-refresher-network/index","path":"/docs/Development/Go/2021-09-11--golang-refresher-network/2021-09-11","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-09-21--golang-react-starter-part-i/index","path":"/docs/Development/Go/2021-09-21--golang-react-starter-part-i/2021-09-21","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-09-22--golang-react-starter-part-ii/index","path":"/docs/Development/Go/2021-09-22--golang-react-starter-part-ii/2021-09-22","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-09-23--golang-react-starter-part-iii/index","path":"/docs/Development/Go/2021-09-23--golang-react-starter-part-iii/2021-09-23","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-09-24--golang-react-starter-part-iv/index","path":"/docs/Development/Go/2021-09-24--golang-react-starter-part-iv/2021-09-24","sidebar":"tutorialSidebar"},{"id":"Development/Go/2021-10-08--goftp/index","path":"/docs/Development/Go/2021-10-08--goftp/2021-10-08","sidebar":"tutorialSidebar"},{"id":"Development/Go/2022-06-15-wails-go-react/index","path":"/docs/Development/Go/2022-06-15-wails-go-react/2022-06-15","sidebar":"tutorialSidebar"},{"id":"Development/Go/2022-10-04-go-ntp-client/index","path":"/docs/Development/Go/2022-10-04-go-ntp-client/2022-10-04","sidebar":"tutorialSidebar"},{"id":"Development/Go/2022-10-05-go-reducing-binary-size/index","path":"/docs/Development/Go/2022-10-05-go-reducing-binary-size/2022-10-05","sidebar":"tutorialSidebar"},{"id":"Development/Go/2022-10-15-go-oauth2-server/index","path":"/docs/Development/Go/2022-10-15-go-oauth2-server/2022-10-15","sidebar":"tutorialSidebar"},{"id":"Development/Go/2022-11-11-go-nts-client-ci/index","path":"/docs/Development/Go/2022-11-11-go-nts-client-ci/2022-11-11","sidebar":"tutorialSidebar"},{"id":"Development/Go/2022-12-26-go-webassembly/index","path":"/docs/Development/Go/2022-12-26-go-webassembly/2022-12-26","sidebar":"tutorialSidebar"},{"id":"Development/Go/2022-12-27-go-bubbles/index","path":"/docs/Development/Go/2022-12-27-go-bubbles/2022-12-27","sidebar":"tutorialSidebar"},{"id":"Development/Go/2022-12-27-go-data-structures/index","path":"/docs/Development/Go/2022-12-27-go-data-structures/2022-12-27","sidebar":"tutorialSidebar"},{"id":"Development/Graphs/2020-05-01--getting-to-know-neo4j/index","path":"/docs/Development/Graphs/2020-05-01--getting-to-know-neo4j/2020-05-01","sidebar":"tutorialSidebar"},{"id":"Development/Graphs/2020-05-02--neo4j-movie-graph/index","path":"/docs/Development/Graphs/2020-05-02--neo4j-movie-graph/2020-05-02","sidebar":"tutorialSidebar"},{"id":"Development/Graphs/2020-05-03--neo4j-cheat-sheet/index","path":"/docs/Development/Graphs/2020-05-03--neo4j-cheat-sheet/2020-05-03","sidebar":"tutorialSidebar"},{"id":"Development/Graphs/2020-05-04--neo4j-corona-tracing/index","path":"/docs/Development/Graphs/2020-05-04--neo4j-corona-tracing/2020-05-04","sidebar":"tutorialSidebar"},{"id":"Development/Graphs/2020-05-05--graphql-queries-and-mutations/index","path":"/docs/Development/Graphs/2020-05-05--graphql-queries-and-mutations/2020-05-05","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2010-01-01--mdx/index","path":"/docs/Development/Javascript/2010-01-01--mdx/2010-01-01","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2010-01-05--markdown-live-code/index","path":"/docs/Development/Javascript/2010-01-05--markdown-live-code/2010-01-05","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2016-05-27--javascript-apis-and-ajax/index","path":"/docs/Development/Javascript/2016-05-27--javascript-apis-and-ajax/2016-05-27","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2016-06-01--node-express-mongodb/index","path":"/docs/Development/Javascript/2016-06-01--node-express-mongodb/2016-06-01","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2016-08-11--node-express-static-wiki/index","path":"/docs/Development/Javascript/2016-08-11--node-express-static-wiki/2016-08-11","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-07-04--random-password-generator/index","path":"/docs/Development/Javascript/2017-07-04--random-password-generator/2017-07-04","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-07-22--caloric-burn/index","path":"/docs/Development/Javascript/2017-07-22--caloric-burn/2017-07-22","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-07-24--obligatory-react-todo-list/index","path":"/docs/Development/Javascript/2017-07-24--obligatory-react-todo-list/2017-07-24","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-08-07--google-analytics-amp/index","path":"/docs/Development/Javascript/2017-08-07--google-analytics-amp/2017-08-07","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-08-15--gatsby-blog-starter/index","path":"/docs/Development/Javascript/2017-08-15--gatsby-blog-starter/2017-08-15","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-08-21--reactive-material/index","path":"/docs/Development/Javascript/2017-08-21--reactive-material/2017-08-21","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-09-03--react-under-the-hood/index","path":"/docs/Development/Javascript/2017-09-03--react-under-the-hood/2017-09-03","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-12-07--react-router-4/index","path":"/docs/Development/Javascript/2017-12-07--react-router-4/2017-12-07","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-12-09--next-start/index","path":"/docs/Development/Javascript/2017-12-09--next-start/2017-12-09","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-12-14--gatsby-wiki/index","path":"/docs/Development/Javascript/2017-12-14--gatsby-wiki/2017-12-14","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2017-12-17--gatsby-reactstrap/index","path":"/docs/Development/Javascript/2017-12-17--gatsby-reactstrap/2017-12-17","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2018-01-07--gatsby-material-ui-starter/index","path":"/docs/Development/Javascript/2018-01-07--gatsby-material-ui-starter/2018-01-07","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2018-01-15--react-transition-group-demo/index","path":"/docs/Development/Javascript/2018-01-15--react-transition-group-demo/2018-01-15","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2018-01-17--server-side-render-react-router/index","path":"/docs/Development/Javascript/2018-01-17--server-side-render-react-router/2018-01-17","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2019-08-02--building-an-mqtt-interface/index","path":"/docs/Development/Javascript/2019-08-02--building-an-mqtt-interface/2019-08-02","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2020-01-12--node-express-redirect-server/index","path":"/docs/Development/Javascript/2020-01-12--node-express-redirect-server/2020-01-12","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-02-14-next-js-2021/index","path":"/docs/Development/Javascript/2021-02-14-next-js-2021/2021-02-14","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-05-07-electron-cross-platform-apps/index","path":"/docs/Development/Javascript/2021-05-07-electron-cross-platform-apps/2021-05-07","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-05-08-electron13-gatsby-wrapper/index","path":"/docs/Development/Javascript/2021-05-08-electron13-gatsby-wrapper/2021-05-08","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-05-09-electron13-and-react/index","path":"/docs/Development/Javascript/2021-05-09-electron13-and-react/2021-05-09","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-05-10-carbon-design-react/index","path":"/docs/Development/Javascript/2021-05-10-carbon-design-react/2021-05-10","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-05-11-carbon-design-react-part2/index","path":"/docs/Development/Javascript/2021-05-11-carbon-design-react-part2/2021-05-11","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-05-12-carbon-design-react-part3/index","path":"/docs/Development/Javascript/2021-05-12-carbon-design-react-part3/2021-05-12","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-06-01--mqtt-with-reactjs/index","path":"/docs/Development/Javascript/2021-06-01--mqtt-with-reactjs/2021-06-01","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-06-02--mqtt-cheat-sheet/index","path":"/docs/Development/Javascript/2021-06-02--mqtt-cheat-sheet/2021-06-02","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-06-04--mqtt-dashboard-react/index","path":"/docs/Development/Javascript/2021-06-04--mqtt-dashboard-react/2021-06-04","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-09-07--intro-to-websockets/index","path":"/docs/Development/Javascript/2021-09-07--intro-to-websockets/2021-09-07","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-09-08--websockets-html-video/index","path":"/docs/Development/Javascript/2021-09-08--websockets-html-video/2021-09-08","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-09-09--websocket-HAproxy/index","path":"/docs/Development/Javascript/2021-09-09--websocket-HAproxy/2021-09-09","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-09-09--websocket-NGINX/index","path":"/docs/Development/Javascript/2021-09-09--websocket-NGINX/2021-09-09","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-09-10--notifications-alerts-as-toast/index","path":"/docs/Development/Javascript/2021-09-10--notifications-alerts-as-toast/2021-09-10","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2021-09-10--websocket-recconects/index","path":"/docs/Development/Javascript/2021-09-10--websocket-recconects/2021-09-10","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-03-01--json-apis-training/index","path":"/docs/Development/Javascript/2022-03-01--json-apis-training/2022-03-01","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-07-01-docusaurus-introduction/index","path":"/docs/Development/Javascript/2022-07-01-docusaurus-introduction/2022-07-01","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-10-29-webrtc-introduction-realtime-chat/index","path":"/docs/Development/Javascript/2022-10-29-webrtc-introduction-realtime-chat/2022-10-29","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-10-30-webrtc-introduction-video-chat-part1/index","path":"/docs/Development/Javascript/2022-10-30-webrtc-introduction-video-chat-part1/2022-10-30","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-11-10-webrtc-introduction-video-chat-part2/index","path":"/docs/Development/Javascript/2022-11-10-webrtc-introduction-video-chat-part2/2022-11-10","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-11-19-web3-javascript-app/index","path":"/docs/Development/Javascript/2022-11-19-web3-javascript-app/2022-11-19","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-11-29-react-typescript-intro-2023/index","path":"/docs/Development/Javascript/2022-11-29-react-typescript-intro-2023/2022-11-29","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-12-11-11ty-starter/index","path":"/docs/Development/Javascript/2022-12-11-11ty-starter/2022-12-11","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2022-12-29-reactive-search-starter/index","path":"/docs/Development/Javascript/2022-12-29-reactive-search-starter/2022-12-29","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-02-12-react-meili-search-starter/index","path":"/docs/Development/Javascript/2023-02-12-react-meili-search-starter/2023-02-12","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-02-13-gatsby-meili-search-starter/index","path":"/docs/Development/Javascript/2023-02-13-gatsby-meili-search-starter/2023-02-13","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-04-01-reactjs-2023/index","path":"/docs/Development/Javascript/2023-04-01-reactjs-2023/2023-04-01","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-06-04-nodejs-typescript-sql/index","path":"/docs/Development/Javascript/2023-06-04-nodejs-typescript-sql/2023-06-04","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-06-12-typescript-2023/index","path":"/docs/Development/Javascript/2023-06-12-typescript-2023/2023-06-12","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-06-12-typescript-pattern/index","path":"/docs/Development/Javascript/2023-06-12-typescript-pattern/2023-06-12","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-06-13-typescript-dom-webpack/index","path":"/docs/Development/Javascript/2023-06-13-typescript-dom-webpack/2023-06-13","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-06-13-typescript-dom/index","path":"/docs/Development/Javascript/2023-06-13-typescript-dom/2023-06-13","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-14-reactjs-typescript-2023/index","path":"/docs/Development/Javascript/2023-12-14-reactjs-typescript-2023/2023-12-14","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-15-reactjs-typescript-redux/index","path":"/docs/Development/Javascript/2023-12-15-reactjs-typescript-redux/2023-12-15","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-16-reactjs-hooks-typescript/index","path":"/docs/Development/Javascript/2023-12-16-reactjs-hooks-typescript/2023-12-16","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-18-reactjs-typescript-redux-toolkit/index","path":"/docs/Development/Javascript/2023-12-18-reactjs-typescript-redux-toolkit/2023-12-18","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-19-react-query-typescript/index","path":"/docs/Development/Javascript/2023-12-19-react-query-typescript/2023-12-19","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-20-react-query-typescript/index","path":"/docs/Development/Javascript/2023-12-20-react-query-typescript/2023-12-20","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-21-react-query-tauri-elasticsearch/index","path":"/docs/Development/Javascript/2023-12-21-react-query-tauri-elasticsearch/2023-12-21","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-24-react-query-tauri-iot-ctrl/index","path":"/docs/Development/Javascript/2023-12-24-react-query-tauri-iot-ctrl/2023-12-21","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-25-redux-toolkit/index","path":"/docs/Development/Javascript/2023-12-25-redux-toolkit/2023-12-25","sidebar":"tutorialSidebar"},{"id":"Development/Javascript/2023-12-31-js-typescript-rest/index","path":"/docs/Development/Javascript/2023-12-31-js-typescript-rest/2023-12-31","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-07--magento-development-in-docker/index","path":"/docs/Development/Magento/2019-09-07--magento-development-in-docker/2019-09-07","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-10--magento2-docker-on-ubuntu/index","path":"/docs/Development/Magento/2019-09-10--magento2-docker-on-ubuntu/2019-09-10","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-11--magento-on-debian-with-nginx/index","path":"/docs/Development/Magento/2019-09-11--magento-on-debian-with-nginx/2019-09-11","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-12--magento-and-elasticsearch/index","path":"/docs/Development/Magento/2019-09-12--magento-and-elasticsearch/2019-09-12","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-13--magento-and-varnish/index","path":"/docs/Development/Magento/2019-09-13--magento-and-varnish/2019-09-13","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-14--magento-and-themes/index","path":"/docs/Development/Magento/2019-09-14--magento-and-themes/2019-09-14","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-15--updating-from-php70-to-php72/index","path":"/docs/Development/Magento/2019-09-15--updating-from-php70-to-php72/2019-09-15","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-16--working-with-sql-dumps/index","path":"/docs/Development/Magento/2019-09-16--working-with-sql-dumps/2019-09-16","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-17--magento2-modules/index","path":"/docs/Development/Magento/2019-09-17--magento2-modules/2019-09-17","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-18--magento2-cronjobs/index","path":"/docs/Development/Magento/2019-09-18--magento2-cronjobs/2019-09-18","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-19--magento2-console-commands/index","path":"/docs/Development/Magento/2019-09-19--magento2-console-commands/2019-09-19","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-20--magento2-ui-components/index","path":"/docs/Development/Magento/2019-09-20--magento2-ui-components/2019-09-20","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-21--magento2-docker-install/index","path":"/docs/Development/Magento/2019-09-21--magento2-docker-install/2019-09-21","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2019-09-21--magento2-google-analytics/index","path":"/docs/Development/Magento/2019-09-21--magento2-google-analytics/2019-09-21","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2020-12-07-google-analytics-g4-tag/index","path":"/docs/Development/Magento/2020-12-07-google-analytics-g4-tag/2020-12-07","sidebar":"tutorialSidebar"},{"id":"Development/Magento/2021-07-28--magento2-google-analytics-universal/index","path":"/docs/Development/Magento/2021-07-28--magento2-google-analytics-universal/2021-07-28","sidebar":"tutorialSidebar"},{"id":"Development/Misc/1980-01-01--dcs-f-14-tomcat/index","path":"/docs/Development/Misc/1980-01-01--dcs-f-14-tomcat/1980-01-01","sidebar":"tutorialSidebar"},{"id":"Development/Misc/1980-01-02--dcs-su-25-t/index","path":"/docs/Development/Misc/1980-01-02--dcs-su-25-t/1980-01-02","sidebar":"tutorialSidebar"},{"id":"Development/Misc/2017-06-17--unreal-engine-coding-standards/index","path":"/docs/Development/Misc/2017-06-17--unreal-engine-coding-standards/2017-06-17","sidebar":"tutorialSidebar"},{"id":"Development/Misc/2023-01-20-pandoc-markup-converter/index","path":"/docs/Development/Misc/2023-01-20-pandoc-markup-converter/2023-01-20","sidebar":"tutorialSidebar"},{"id":"Development/Python/2017-12-11--getting-started-with-python/index","path":"/docs/Development/Python/2017-12-11--getting-started-with-python/2017-12-11","sidebar":"tutorialSidebar"},{"id":"Development/Python/2017-12-13--getting-started-with-python-part-ii/index","path":"/docs/Development/Python/2017-12-13--getting-started-with-python-part-ii/2017-12-13","sidebar":"tutorialSidebar"},{"id":"Development/Python/2017-12-17--python-ssh-logger/index","path":"/docs/Development/Python/2017-12-17--python-ssh-logger/2017-12-17","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-06-01-python-pyscript/index","path":"/docs/Development/Python/2022-06-01-python-pyscript/2022-06-01","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-06-27-python-web-scraping/index","path":"/docs/Development/Python/2022-06-27-python-web-scraping/2022-06-27","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-09-17-python-video-processing/index","path":"/docs/Development/Python/2022-09-17-python-video-processing/2022-09-17","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-05-python-text-processing/index","path":"/docs/Development/Python/2022-10-05-python-text-processing/2022-10-05","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-06-python-minify-text/index","path":"/docs/Development/Python/2022-10-06-python-minify-text/2022-10-06","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-07-python-docusaurus-elasticsearch/index","path":"/docs/Development/Python/2022-10-07-python-docusaurus-elasticsearch/2022-10-07","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-08-python-desktop-app/index","path":"/docs/Development/Python/2022-10-08-python-desktop-app/2022-10-08","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-08-python-flask-app/index","path":"/docs/Development/Python/2022-10-08-python-flask-app/2022-10-08","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-09-python-flask-elasticsearch/index","path":"/docs/Development/Python/2022-10-09-python-flask-elasticsearch/2022-10-09","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-10-python-filesystem/index","path":"/docs/Development/Python/2022-10-10-python-filesystem/2022-10-10","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-12-python-regular-expressions/index","path":"/docs/Development/Python/2022-10-12-python-regular-expressions/2022-10-12","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-13-python-rest-api/index","path":"/docs/Development/Python/2022-10-13-python-rest-api/2022-10-13","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-14-python-rest-elastic/index","path":"/docs/Development/Python/2022-10-14-python-rest-elastic/2022-10-14","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-15-python-rest-server/index","path":"/docs/Development/Python/2022-10-15-python-rest-server/2022-10-15","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-10-22-python-nlp/index","path":"/docs/Development/Python/2022-10-22-python-nlp/2022-10-22","sidebar":"tutorialSidebar"},{"id":"Development/Python/2022-12-11-pipenv/index","path":"/docs/Development/Python/2022-12-11-pipenv/2022-12-11","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-01-16-python-3-11-features/index","path":"/docs/Development/Python/2023-01-16-python-3-11-features/2023-01-16","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-04-24-python-pandas-cheat-sheet/index","path":"/docs/Development/Python/2023-04-24-python-pandas-cheat-sheet/2023-04-24","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-03-python-matplotlib-cheat-sheet/index","path":"/docs/Development/Python/2023-05-03-python-matplotlib-cheat-sheet/2023-05-03","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-07-python-scipy-introduction/index","path":"/docs/Development/Python/2023-05-07-python-scipy-introduction/2023-05-07","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-07-python-seaborn-cheat-sheet/index","path":"/docs/Development/Python/2023-05-07-python-seaborn-cheat-sheet/2023-05-07","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-10-plotly-COVID19-dataset/index","path":"/docs/Development/Python/2023-05-10-plotly-COVID19-dataset/2023-05-10","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-12-matplotlib-seaborn-titanic-dataset/index","path":"/docs/Development/Python/2023-05-12-matplotlib-seaborn-titanic-dataset/2023-05-12","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-14-visualizing-text-datasets/index","path":"/docs/Development/Python/2023-05-14-visualizing-text-datasets/2023-05-14","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-16-seaborn-cc-churn-vis/index","path":"/docs/Development/Python/2023-05-16-seaborn-cc-churn-vis/2023-05-16","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-17-fandango-ratings-controversy/index","path":"/docs/Development/Python/2023-05-17-fandango-ratings-controversy/2023-05-17","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-18-python-asserts/index","path":"/docs/Development/Python/2023-05-18-python-asserts/2023-05-18","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-20-python-sklearn-cheat-sheet/index","path":"/docs/Development/Python/2023-05-20-python-sklearn-cheat-sheet/2023-05-20","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-05-28-telco-churn-cohort-study/index","path":"/docs/Development/Python/2023-05-28-telco-churn-cohort-study/2023-05-28","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-07-09-python-scikit-image-intro/index","path":"/docs/Development/Python/2023-07-09-python-scikit-image-intro/2023-07-09","sidebar":"tutorialSidebar"},{"id":"Development/Python/2023-08-14-python-scikit-image-opencv/index","path":"/docs/Development/Python/2023-08-14-python-scikit-image-opencv/2023-08-14","sidebar":"tutorialSidebar"},{"id":"Development/ReactNative/2022-05-01-react-native-hello-world/index","path":"/docs/Development/ReactNative/2022-05-01-react-native-hello-world/2022-05-01","sidebar":"tutorialSidebar"},{"id":"Development/ReactNative/2022-05-02-react-native-navigation/index","path":"/docs/Development/ReactNative/2022-05-02-react-native-navigation/2022-05-02","sidebar":"tutorialSidebar"},{"id":"Development/ReactNative/2022-05-03-react-native-contextapi/index","path":"/docs/Development/ReactNative/2022-05-03-react-native-contextapi/2022-05-03","sidebar":"tutorialSidebar"},{"id":"Development/ReactNative/2022-05-04-react-native-hooks/index","path":"/docs/Development/ReactNative/2022-05-04-react-native-hooks/2022-05-04","sidebar":"tutorialSidebar"},{"id":"Development/ReactNative/2022-05-05-react-native-context-hooks/index","path":"/docs/Development/ReactNative/2022-05-05-react-native-context-hooks/2022-05-05","sidebar":"tutorialSidebar"},{"id":"Development/ReactNative/2022-05-06-react-native-reducer/index","path":"/docs/Development/ReactNative/2022-05-06-react-native-reducer/2022-05-06","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-18--ansible-on-debian-buster/index","path":"/docs/DevOps/Ansible/2020-11-18--ansible-on-debian-buster/2020-11-18","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-19--ansible-playbooks/index","path":"/docs/DevOps/Ansible/2020-11-19--ansible-playbooks/2020-11-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-20--ansible-copy-cheat-sheet/index","path":"/docs/DevOps/Ansible/2020-11-20--ansible-copy-cheat-sheet/2020-11-20","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-21--ansible-modules-and-roles/index","path":"/docs/DevOps/Ansible/2020-11-21--ansible-modules-and-roles/2020-11-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-22--ansible-and-docker/index","path":"/docs/DevOps/Ansible/2020-11-22--ansible-and-docker/2020-11-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-23--ansible-getting-serious/index","path":"/docs/DevOps/Ansible/2020-11-23--ansible-getting-serious/2020-11-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-24--ansible-vault-user-login/index","path":"/docs/DevOps/Ansible/2020-11-24--ansible-vault-user-login/2020-11-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-25--ansible-in-gitlab-ci/index","path":"/docs/DevOps/Ansible/2020-11-25--ansible-in-gitlab-ci/2020-11-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2020-11-26--ansible-dind/index","path":"/docs/DevOps/Ansible/2020-11-26--ansible-dind/2020-11-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2021-04-28-ansible-tower-rhel/index","path":"/docs/DevOps/Ansible/2021-04-28-ansible-tower-rhel/2021-04-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2021-04-29-ansible-tower-setup/index","path":"/docs/DevOps/Ansible/2021-04-29-ansible-tower-setup/2021-04-29","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2021-04-30-ansible-tower-slack-notifications/index","path":"/docs/DevOps/Ansible/2021-04-30-ansible-tower-slack-notifications/2021-04-30","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2021-05-01-ansible-tower-workflow-templates/index","path":"/docs/DevOps/Ansible/2021-05-01-ansible-tower-workflow-templates/2021-05-01","sidebar":"tutorialSidebar"},{"id":"DevOps/Ansible/2021-05-02-ansible-tower-examples/index","path":"/docs/DevOps/Ansible/2021-05-02-ansible-tower-examples/2021-05-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2017-10-03--search-engine-setup-and-configuration/index","path":"/docs/DevOps/Elasticsearch/2017-10-03--search-engine-setup-and-configuration/2017-10-03","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2017-12-05--elasticsearch-react-example/index","path":"/docs/DevOps/Elasticsearch/2017-12-05--elasticsearch-react-example/2017-12-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2017-12-26--elasticsearch-kibana/index","path":"/docs/DevOps/Elasticsearch/2017-12-26--elasticsearch-kibana/2017-12-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2017-12-31--securing-elasticsearch-xpack/index","path":"/docs/DevOps/Elasticsearch/2017-12-31--securing-elasticsearch-xpack/2017-12-31","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2018-01-01--securing-elasticsearch-readonlyrest/index","path":"/docs/DevOps/Elasticsearch/2018-01-01--securing-elasticsearch-readonlyrest/2018-01-01","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2019-09-08--elasticsearch_7-5_docker/index","path":"/docs/DevOps/Elasticsearch/2019-09-08--elasticsearch_7-5_docker/2019-09-08","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2020-06-01--elasticsearch-docker/index","path":"/docs/DevOps/Elasticsearch/2020-06-01--elasticsearch-docker/2020-06-01","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-20-elasticsearch-7-refresher/index","path":"/docs/DevOps/Elasticsearch/2021-03-20-elasticsearch-7-refresher/2021-03-20","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-21-logstash-digesting-data/index","path":"/docs/DevOps/Elasticsearch/2021-03-21-logstash-digesting-data/2021-03-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-22-logstash-working-with-structured-data/index","path":"/docs/DevOps/Elasticsearch/2021-03-22-logstash-working-with-structured-data/2021-03-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-23-logstash-working-with-unstructured-data/index","path":"/docs/DevOps/Elasticsearch/2021-03-23-logstash-working-with-unstructured-data/2021-03-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-24-logstash-common-grok-pattern/index","path":"/docs/DevOps/Elasticsearch/2021-03-24-logstash-common-grok-pattern/2021-03-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-25-elasticsearch7-activate-logging-of-search-queries/cheat-sheet","path":"/docs/DevOps/Elasticsearch/2021-03-25-elasticsearch7-activate-logging-of-search-queries/elasticsearch-cheat-sheet","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-25-elasticsearch7-activate-logging-of-search-queries/index","path":"/docs/DevOps/Elasticsearch/2021-03-25-elasticsearch7-activate-logging-of-search-queries/2021-03-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-26-elasticsearch7-for-syslog-messages/index","path":"/docs/DevOps/Elasticsearch/2021-03-26-elasticsearch7-for-syslog-messages/2021-03-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-27-elasticsearch7-aggregations/index","path":"/docs/DevOps/Elasticsearch/2021-03-27-elasticsearch7-aggregations/2021-03-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-28-elasticsearch7-timeseries/index","path":"/docs/DevOps/Elasticsearch/2021-03-28-elasticsearch7-timeseries/2021-03-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-29-elasticsearch7-data-transformations/index","path":"/docs/DevOps/Elasticsearch/2021-03-29-elasticsearch7-data-transformations/2021-03-29","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-30-elasticsearch7-and-filebeats/index","path":"/docs/DevOps/Elasticsearch/2021-03-30-elasticsearch7-and-filebeats/2021-03-30","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-03-31-elastic-filebeats-for-apache-logs/index","path":"/docs/DevOps/Elasticsearch/2021-03-31-elastic-filebeats-for-apache-logs/2021-03-31","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2021-04-01-elastic-filebeats-for-nginx-logs/index","path":"/docs/DevOps/Elasticsearch/2021-04-01-elastic-filebeats-for-nginx-logs/2021-04-01","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2022-02-02--elasticsearch-v8-upgrade/index","path":"/docs/DevOps/Elasticsearch/2022-02-02--elasticsearch-v8-upgrade/2022-02-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2022-02-03--elasticsearch-v8-data-ingestion/index","path":"/docs/DevOps/Elasticsearch/2022-02-03--elasticsearch-v8-data-ingestion/2022-02-03","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2022-02-04--kibana-v8-search-queries/index","path":"/docs/DevOps/Elasticsearch/2022-02-04--kibana-v8-search-queries/2022-02-04","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2022-02-05--kibana-v8-index-management/index","path":"/docs/DevOps/Elasticsearch/2022-02-05--kibana-v8-index-management/2022-02-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2022-02-06--elasticsearch-v8-data-ingestion-apache/index","path":"/docs/DevOps/Elasticsearch/2022-02-06--elasticsearch-v8-data-ingestion-apache/2022-02-06","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2022-10-11--opensearch-docker-compose/index","path":"/docs/DevOps/Elasticsearch/2022-10-11--opensearch-docker-compose/2022-10-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2022-10-12--opensearch-rest-api/index","path":"/docs/DevOps/Elasticsearch/2022-10-12--opensearch-rest-api/2022-10-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Elasticsearch/2023-02-10--meili-rusty-elastic-docker/index","path":"/docs/DevOps/Elasticsearch/2023-02-10--meili-rusty-elastic-docker/2023-02-10","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2020-02-01--gitlab-in-podman-on-centos8/index","path":"/docs/DevOps/GitOps/2020-02-01--gitlab-in-podman-on-centos8/2020-02-01","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2020-02-02--docker-images-in-gitlab/index","path":"/docs/DevOps/GitOps/2020-02-02--docker-images-in-gitlab/2020-02-02","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2020-08-01--gitlab-install-on-ubuntu-server/index","path":"/docs/DevOps/GitOps/2020-08-01--gitlab-install-on-ubuntu-server/2020-08-01","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2020-08-02--gitlab-setup/index","path":"/docs/DevOps/GitOps/2020-08-02--gitlab-setup/2020-08-02","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2020-08-03--gitlab-as-docker-registry/index","path":"/docs/DevOps/GitOps/2020-08-03--gitlab-as-docker-registry/2020-08-03","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2020-08-04--working-with-gitlab/index","path":"/docs/DevOps/GitOps/2020-08-04--working-with-gitlab/2020-08-04","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2021-02-25-gatsby-build-gitlab-pipeline/index","path":"/docs/DevOps/GitOps/2021-02-25-gatsby-build-gitlab-pipeline/2021-02-25","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2022-03-16--gitlab-docker-compose-on-localhost/index","path":"/docs/DevOps/GitOps/2022-03-16--gitlab-docker-compose-on-localhost/2022-03-16","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2022-11-10-go-gitlab-ci-pipeline/index","path":"/docs/DevOps/GitOps/2022-11-10-go-gitlab-ci-pipeline/2022-11-10","sidebar":"tutorialSidebar"},{"id":"DevOps/GitOps/2023-10-28-github-passkey/index","path":"/docs/DevOps/GitOps/2023-10-28-github-passkey/2023-10-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-08-15--installing-nomad-ubuntu/index","path":"/docs/DevOps/Hashicorp/2020-08-15--installing-nomad-ubuntu/2020-08-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-08-16--nomad-cluster/index","path":"/docs/DevOps/Hashicorp/2020-08-16--nomad-cluster/2020-08-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-08-17--installing-consul-ubuntu/index","path":"/docs/DevOps/Hashicorp/2020-08-17--installing-consul-ubuntu/2020-08-17","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-08-18--consul-mock-datacenter/index","path":"/docs/DevOps/Hashicorp/2020-08-18--consul-mock-datacenter/2020-08-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-08-18--consul-service-mesh/index","path":"/docs/DevOps/Hashicorp/2020-08-18--consul-service-mesh/2020-08-18","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-08-19--consul-deployment-guide/index","path":"/docs/DevOps/Hashicorp/2020-08-19--consul-deployment-guide/2020-08-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-10-23--hashicorp-packer-machine-image/index","path":"/docs/DevOps/Hashicorp/2020-10-23--hashicorp-packer-machine-image/2020-10-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-10-24--hashicorp-packer-and-virtualbox-preseed/index","path":"/docs/DevOps/Hashicorp/2020-10-24--hashicorp-packer-and-virtualbox-preseed/2020-10-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-10-25--hashicorp-packer-and-virtualbox-autoinstall/index","path":"/docs/DevOps/Hashicorp/2020-10-25--hashicorp-packer-and-virtualbox-autoinstall/2020-10-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2020-10-26--hashicorp-packer-provisioner/index","path":"/docs/DevOps/Hashicorp/2020-10-26--hashicorp-packer-provisioner/2020-10-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-01--hashicorp-nomad-refresher/index","path":"/docs/DevOps/Hashicorp/2021-08-01--hashicorp-nomad-refresher/2021-08-01","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-02--hashicorp-nomad-security/index","path":"/docs/DevOps/Hashicorp/2021-08-02--hashicorp-nomad-security/2021-08-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-03--hashicorp-nomad-jobs/index","path":"/docs/DevOps/Hashicorp/2021-08-03--hashicorp-nomad-jobs/2021-08-03","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-04--hashicorp-nomad-job-specifications/index","path":"/docs/DevOps/Hashicorp/2021-08-04--hashicorp-nomad-job-specifications/2021-08-04","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-05--hashicorp-consul-service-discovery/index","path":"/docs/DevOps/Hashicorp/2021-08-05--hashicorp-consul-service-discovery/2021-08-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-06--hashicorp-consul-fabio-loadbalancing/index","path":"/docs/DevOps/Hashicorp/2021-08-06--hashicorp-consul-fabio-loadbalancing/2021-08-06","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-06--hashicorp-consul-traefik-loadbalancing/index","path":"/docs/DevOps/Hashicorp/2021-08-06--hashicorp-consul-traefik-loadbalancing/2021-08-06","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-07--hashicorp-nomad-job-configuration/index","path":"/docs/DevOps/Hashicorp/2021-08-07--hashicorp-nomad-job-configuration/2021-08-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-08--hashicorp-nomad-access-control-lists/index","path":"/docs/DevOps/Hashicorp/2021-08-08--hashicorp-nomad-access-control-lists/2021-08-08","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-09--hashicorp-consul-services/index","path":"/docs/DevOps/Hashicorp/2021-08-09--hashicorp-consul-services/2021-08-09","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-10--hashicorp-consul-key-value-store/index","path":"/docs/DevOps/Hashicorp/2021-08-10--hashicorp-consul-key-value-store/2021-08-10","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-11--hashicorp-consul-backups/index","path":"/docs/DevOps/Hashicorp/2021-08-11--hashicorp-consul-backups/2021-08-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-12--hashicorp-consul-service-mesh/index","path":"/docs/DevOps/Hashicorp/2021-08-12--hashicorp-consul-service-mesh/2021-08-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-13--hashicorp-consul-access-control-lists/index","path":"/docs/DevOps/Hashicorp/2021-08-13--hashicorp-consul-access-control-lists/2021-08-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-14--hashicorp-consul-tls-encryption/index","path":"/docs/DevOps/Hashicorp/2021-08-14--hashicorp-consul-tls-encryption/2021-08-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-20--hashicorp-vault-setup/index","path":"/docs/DevOps/Hashicorp/2021-08-20--hashicorp-vault-setup/2021-08-20","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-21--hashicorp-vault-secrets-tokens/index","path":"/docs/DevOps/Hashicorp/2021-08-21--hashicorp-vault-secrets-tokens/2021-08-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-22--hashicorp-vault-policies/index","path":"/docs/DevOps/Hashicorp/2021-08-22--hashicorp-vault-policies/2021-08-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-23--hashicorp-vault-rest-api/index","path":"/docs/DevOps/Hashicorp/2021-08-23--hashicorp-vault-rest-api/2021-08-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-08-25--hashicorp-vault-logging/index","path":"/docs/DevOps/Hashicorp/2021-08-25--hashicorp-vault-logging/2021-08-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-09-05--hashicorp-terraform-setup/index","path":"/docs/DevOps/Hashicorp/2021-09-05--hashicorp-terraform-setup/2021-09-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-09-06--hashicorp-terraform-providers-variables-attributes/index","path":"/docs/DevOps/Hashicorp/2021-09-06--hashicorp-terraform-providers-variables-attributes/2021-09-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-10-10--hashicorp-nomad-in-production/index","path":"/docs/DevOps/Hashicorp/2021-10-10--hashicorp-nomad-in-production/2021-10-10","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2021-10-11--hashicorp-consul-in-production/index","path":"/docs/DevOps/Hashicorp/2021-10-11--hashicorp-consul-in-production/2021-10-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-15-hashicorp-nomad-refresher/index","path":"/docs/DevOps/Hashicorp/2022-05-15-hashicorp-nomad-refresher/2022-05-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-16-hashicorp-dojo-nomad-starter/index","path":"/docs/DevOps/Hashicorp/2022-05-16-hashicorp-dojo-nomad-starter/2022-05-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-17-hashicorp-dojo-nomad-deployment/index","path":"/docs/DevOps/Hashicorp/2022-05-17-hashicorp-dojo-nomad-deployment/2022-05-17","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-18-hashicorp-dojo-nomad-adding-encryption/index","path":"/docs/DevOps/Hashicorp/2022-05-18-hashicorp-dojo-nomad-adding-encryption/2022-05-18","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-19-hashicorp-dojo-nomad-access-control/index","path":"/docs/DevOps/Hashicorp/2022-05-19-hashicorp-dojo-nomad-access-control/2022-05-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-20-hashicorp-dojo-nomad-consul/index","path":"/docs/DevOps/Hashicorp/2022-05-20-hashicorp-dojo-nomad-consul/2022-05-20","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-21-hashicorp-dojo-consul-refresher/index","path":"/docs/DevOps/Hashicorp/2022-05-21-hashicorp-dojo-consul-refresher/2022-05-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-22-hashicorp-dojo-nomad-consul-part-2/index","path":"/docs/DevOps/Hashicorp/2022-05-22-hashicorp-dojo-nomad-consul-part-2/2022-05-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-24-hashicorp-nomad-with-nginx/index","path":"/docs/DevOps/Hashicorp/2022-05-24-hashicorp-nomad-with-nginx/2022-05-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-25-hashicorp-nomad-with-gitlab/index","path":"/docs/DevOps/Hashicorp/2022-05-25-hashicorp-nomad-with-gitlab/2022-05-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-26-hashicorp-nomad-with-gitlab-part-2/index","path":"/docs/DevOps/Hashicorp/2022-05-26-hashicorp-nomad-with-gitlab-part-2/2022-05-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-27-hashicorp-nomad-for-elastic/index","path":"/docs/DevOps/Hashicorp/2022-05-27-hashicorp-nomad-for-elastic/2022-05-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-28-hashicorp-nomad-for-elastic-part-2/index","path":"/docs/DevOps/Hashicorp/2022-05-28-hashicorp-nomad-for-elastic-part-2/2022-05-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-05-29-hashicorp-nomad-with-nginx-loadbalancer/index","path":"/docs/DevOps/Hashicorp/2022-05-29-hashicorp-nomad-with-nginx-loadbalancer/2022-05-29","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-06-07-hashicorp-waypoint-docker/index","path":"/docs/DevOps/Hashicorp/2022-06-07-hashicorp-waypoint-docker/2022-06-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-06-08-hashicorp-waypoint-nomad/index","path":"/docs/DevOps/Hashicorp/2022-06-08-hashicorp-waypoint-nomad/2022-06-09","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-09-22--nomad-nts-timeserver/index","path":"/docs/DevOps/Hashicorp/2022-09-22--nomad-nts-timeserver/2022-09-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-09-24--nomad-nginx-ingress/index","path":"/docs/DevOps/Hashicorp/2022-09-24--nomad-nginx-ingress/2022-09-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-10-21-hashicorp-nomad-for-osticket-part-i/index","path":"/docs/DevOps/Hashicorp/2022-10-21-hashicorp-nomad-for-osticket-part-i/2022-10-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-10-22-hashicorp-nomad-sidecar-pattern/index","path":"/docs/DevOps/Hashicorp/2022-10-22-hashicorp-nomad-sidecar-pattern/2022-10-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-10-23-hashicorp-consul-connect/index","path":"/docs/DevOps/Hashicorp/2022-10-23-hashicorp-consul-connect/2022-10-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-10-23-hashicorp-nomad-ports/index","path":"/docs/DevOps/Hashicorp/2022-10-23-hashicorp-nomad-ports/2022-10-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-10-25-hashicorp-nomad-for-osticket-part-ii/index","path":"/docs/DevOps/Hashicorp/2022-10-25-hashicorp-nomad-for-osticket-part-ii/2022-10-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-11-11-hashicorp-nomad-for-borg-backups/index","path":"/docs/DevOps/Hashicorp/2022-11-11-hashicorp-nomad-for-borg-backups/2022-11-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-11-12-hashicorp-nomad-certbot-renewal/index","path":"/docs/DevOps/Hashicorp/2022-11-12-hashicorp-nomad-certbot-renewal/2022-11-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-11-15-hashicorp-nomad-balanced-nts/index","path":"/docs/DevOps/Hashicorp/2022-11-15-hashicorp-nomad-balanced-nts/2022-11-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-11-15-hashicorp-nomad-nginx-load-balancing/index","path":"/docs/DevOps/Hashicorp/2022-11-15-hashicorp-nomad-nginx-load-balancing/2022-11-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-11-16-hashicorp-nomad-mautic/index","path":"/docs/DevOps/Hashicorp/2022-11-16-hashicorp-nomad-mautic/2022-11-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-11-18-hashicorp-nomad-grav/index","path":"/docs/DevOps/Hashicorp/2022-11-18-hashicorp-nomad-grav/2022-11-18","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-11-24-hashicorp-consul-connect/index","path":"/docs/DevOps/Hashicorp/2022-11-24-hashicorp-consul-connect/2022-11-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-12-03-hashicorp-vault-installation/index","path":"/docs/DevOps/Hashicorp/2022-12-03-hashicorp-vault-installation/2022-12-03","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-12-04-hashicorp-consul-vault-certificates-part1/index","path":"/docs/DevOps/Hashicorp/2022-12-04-hashicorp-consul-vault-certificates-part1/2022-12-04","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-12-05-hashicorp-consul-vault-certificates-part2/index","path":"/docs/DevOps/Hashicorp/2022-12-05-hashicorp-consul-vault-certificates-part2/2022-12-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-12-05-hashicorp-consul-vault-certificates-part3/index","path":"/docs/DevOps/Hashicorp/2022-12-05-hashicorp-consul-vault-certificates-part3/2022-12-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2022-12-07-hashicorp-vault-ca-certificates/index","path":"/docs/DevOps/Hashicorp/2022-12-07-hashicorp-vault-ca-certificates/2022-12-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2023-10-22-hashicorp-terraform-docker-2023/index","path":"/docs/DevOps/Hashicorp/2023-10-22-hashicorp-terraform-docker-2023/2023-10-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2023-12-22-hashicorp-terraform-docker-2024/index","path":"/docs/DevOps/Hashicorp/2023-12-22-hashicorp-terraform-docker-2024/2023-12-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Hashicorp/2023-12-23-opentofu-vs-terraform/index","path":"/docs/DevOps/Hashicorp/2023-12-23-opentofu-vs-terraform/2023-12-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-01-02--managing-containers-in-kubernetes/index","path":"/docs/DevOps/Kubernetes/2019-01-02--managing-containers-in-kubernetes/2019-01-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-01-15--creating-a-kubernetes-cluster/index","path":"/docs/DevOps/Kubernetes/2019-01-15--creating-a-kubernetes-cluster/2019-01-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-01-17--kubernetes-and-microservices/index","path":"/docs/DevOps/Kubernetes/2019-01-17--kubernetes-and-microservices/2019-01-17","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-01-19--kubernetes-cluster-logging/index","path":"/docs/DevOps/Kubernetes/2019-01-19--kubernetes-cluster-logging/2019-01-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-01-21--kubernetes-bare-metal-ingress/index","path":"/docs/DevOps/Kubernetes/2019-01-21--kubernetes-bare-metal-ingress/2019-01-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-01-21--kubernetes-nginx-https-service/index","path":"/docs/DevOps/Kubernetes/2019-01-21--kubernetes-nginx-https-service/2019-01-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-01-22--kubernetes-nginx-ingress/index","path":"/docs/DevOps/Kubernetes/2019-01-22--kubernetes-nginx-ingress/2019-01-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-01-27--kubernetes-the-chinese-way/index","path":"/docs/DevOps/Kubernetes/2019-01-27--kubernetes-the-chinese-way/2019-01-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-02-01--kubernetes-traefik-ingress/index","path":"/docs/DevOps/Kubernetes/2019-02-01--kubernetes-traefik-ingress/2019-02-01","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-03-02--installing-openshift-3-on-centos-7/index","path":"/docs/DevOps/Kubernetes/2019-03-02--installing-openshift-3-on-centos-7/2019-03-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2019-03-05--first-openshift3-cluster/index","path":"/docs/DevOps/Kubernetes/2019-03-05--first-openshift3-cluster/2019-03-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Kubernetes/2022-11-19--k3s-air-gapped-kubernetes/index","path":"/docs/DevOps/Kubernetes/2022-11-19--k3s-air-gapped-kubernetes/2022-11-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2018-10-27--red-hat-certified-engineer-rhce/index","path":"/docs/DevOps/Linux/2018-10-27--red-hat-certified-engineer-rhce/2018-10-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-01-11--debian-change-ssh-port-hostname/index","path":"/docs/DevOps/Linux/2019-01-11--debian-change-ssh-port-hostname/2019-01-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-01-11--root-access-ubuntu-server/index","path":"/docs/DevOps/Linux/2019-01-11--root-access-ubuntu-server/2019-01-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-01-11--ubuntu-network-configuration/index","path":"/docs/DevOps/Linux/2019-01-11--ubuntu-network-configuration/2019-01-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-01-11--ubuntu-server-app-armour/index","path":"/docs/DevOps/Linux/2019-01-11--ubuntu-server-app-armour/2019-01-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-01-12--centos-network-configuration/index","path":"/docs/DevOps/Linux/2019-01-12--centos-network-configuration/2019-01-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-01-13--centos-administration/index","path":"/docs/DevOps/Linux/2019-01-13--centos-administration/2019-01-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-06-07--installing-docker-on-centos8/index","path":"/docs/DevOps/Linux/2019-06-07--installing-docker-on-centos8/2019-06-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-06-14--download-and-save-docker-image/index","path":"/docs/DevOps/Linux/2019-06-14--download-and-save-docker-image/2019-06-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-06-17--working-with-tmux/index","path":"/docs/DevOps/Linux/2019-06-17--working-with-tmux/2019-06-17","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-09-22--centos8-network-config/index","path":"/docs/DevOps/Linux/2019-09-22--centos8-network-config/2019-09-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-09-22--zsh-on-centos8/index","path":"/docs/DevOps/Linux/2019-09-22--zsh-on-centos8/2019-09-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-09-22--zsh-on-ubuntu20/index","path":"/docs/DevOps/Linux/2019-09-22--zsh-on-ubuntu20/2019-09-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-09-25--podman-cheat-sheet/index","path":"/docs/DevOps/Linux/2019-09-25--podman-cheat-sheet/2019-09-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-09-26--kali-docker-windows/index","path":"/docs/DevOps/Linux/2019-09-26--kali-docker-windows/2019-09-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2019-12-03--podman-ftp-server-container/index","path":"/docs/DevOps/Linux/2019-12-03--podman-ftp-server-container/2019-12-03","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2020-01-05--centos8-cockpit/index","path":"/docs/DevOps/Linux/2020-01-05--centos8-cockpit/2020-01-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2020-01-07--centos8-firewalld/index","path":"/docs/DevOps/Linux/2020-01-07--centos8-firewalld/2020-01-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2020-10-13--smarttools-centos/index","path":"/docs/DevOps/Linux/2020-10-13--smarttools-centos/2020-10-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2020-10-20--activating-root-login-ubuntu-20-10/index","path":"/docs/DevOps/Linux/2020-10-20--activating-root-login-ubuntu-20-10/2020-10-20","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-03-15-debian-upgrade-bullseye/index","path":"/docs/DevOps/Linux/2021-03-15-debian-upgrade-bullseye/2021-03-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-04-11-installing-free-red-hat-enterprise-linux/index","path":"/docs/DevOps/Linux/2021-04-11-installing-free-red-hat-enterprise-linux/2021-04-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-04-12-gnome3-cheat-sheet/index","path":"/docs/DevOps/Linux/2021-04-12-gnome3-cheat-sheet/2021-04-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-04-13-installing-kvm-on-red-hat-enterprise-linux/index","path":"/docs/DevOps/Linux/2021-04-13-installing-kvm-on-red-hat-enterprise-linux/2021-04-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-04-14-using-deb-files-on-rhel8/index","path":"/docs/DevOps/Linux/2021-04-14-using-deb-files-on-rhel8/2021-04-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-09-01--kali-linux-raspberry-pi/index","path":"/docs/DevOps/Linux/2021-09-01--kali-linux-raspberry-pi/2021-09-01","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-09-02--openwrt-raspberry-pi/index","path":"/docs/DevOps/Linux/2021-09-02--openwrt-raspberry-pi/2021-09-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-10-09--editor-from-hell/index","path":"/docs/DevOps/Linux/2021-10-09--editor-from-hell/2021-10-09","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-10-09--the-friendly-editor/index","path":"/docs/DevOps/Linux/2021-10-09--the-friendly-editor/2021-10-09","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-10-23--arch-linux-install-packages/index","path":"/docs/DevOps/Linux/2021-10-23--arch-linux-install-packages/2021-10-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-10-24--arch-linux-install-docker/index","path":"/docs/DevOps/Linux/2021-10-24--arch-linux-install-docker/2021-10-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-10-24--arch-linux-install-mesen/index","path":"/docs/DevOps/Linux/2021-10-24--arch-linux-install-mesen/2021-10-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2021-10-26--install-davinci-resolve-on-arch/index","path":"/docs/DevOps/Linux/2021-10-26--install-davinci-resolve-on-arch/2021-10-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-03-07--ffmpeg-cheat-sheet/index","path":"/docs/DevOps/Linux/2022-03-07--ffmpeg-cheat-sheet/2022-03-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-03-08--arch-kde-fritz-vpn/index","path":"/docs/DevOps/Linux/2022-03-08--arch-kde-fritz-vpn/2022-03-08","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-03-09--fing-cli-network-scanner/index","path":"/docs/DevOps/Linux/2022-03-09--fing-cli-network-scanner/2022-03-09","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-03-10--nmap-network-scanner/index","path":"/docs/DevOps/Linux/2022-03-10--nmap-network-scanner/2022-03-10","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-09-15--ntp-over-nts-timeserver/index","path":"/docs/DevOps/Linux/2022-09-15--ntp-over-nts-timeserver/2022-09-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-09-28--nts-client-setup/index","path":"/docs/DevOps/Linux/2022-09-28--nts-client-setup/2022-09-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-09-29--build-an-chrony-nts-client-from-source/index","path":"/docs/DevOps/Linux/2022-09-29--build-an-chrony-nts-client-from-source/2022-09-29","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-11-04--check-filesystem/index","path":"/docs/DevOps/Linux/2022-11-04--check-filesystem/2022-11-04","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2022-11-09--docker-borg-backupserver/index","path":"/docs/DevOps/Linux/2022-11-09--docker-borg-backupserver/2022-11-09","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2023-02-03--installing-docker-raspberry-pi/index","path":"/docs/DevOps/Linux/2023-02-03--installing-docker-raspberry-pi/2023-02-03","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2023-03-29--installing-the-elgato-streamdeck/index","path":"/docs/DevOps/Linux/2023-03-29--installing-the-elgato-streamdeck/2023-03-29","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2023-10-28--lunarvim/index","path":"/docs/DevOps/Linux/2023-10-28--lunarvim/2023-10-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Linux/2024-01-08--vsftp-ubuntu/index","path":"/docs/DevOps/Linux/2024-01-08--vsftp-ubuntu/2024-01-08","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2017-10-01--using-nginx-as-proxy-for-your-nodejs-apps/index","path":"/docs/DevOps/NGINX/2017-10-01--using-nginx-as-proxy-for-your-nodejs-apps/2017-10-01","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2017-12-24--nginx-node-security/index","path":"/docs/DevOps/NGINX/2017-12-24--nginx-node-security/2017-12-24","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2019-02-05--nginx-ingress-cert-manager/index","path":"/docs/DevOps/NGINX/2019-02-05--nginx-ingress-cert-manager/2019-02-05","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2019-11-07--nginx-rtmp-streaming-container/index","path":"/docs/DevOps/NGINX/2019-11-07--nginx-rtmp-streaming-container/2019-11-07","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2019-11-08--nginx-rtmp-website/index","path":"/docs/DevOps/NGINX/2019-11-08--nginx-rtmp-website/2019-11-08","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2020-07-29--securing-apache-and-nginx/index","path":"/docs/DevOps/NGINX/2020-07-29--securing-apache-and-nginx/2020-07-29","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2020-08-26--nginx-docker-setup/index","path":"/docs/DevOps/NGINX/2020-08-26--nginx-docker-setup/2020-08-26","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2020-08-27--nginx-docker-ssl-certs-self-signed/index","path":"/docs/DevOps/NGINX/2020-08-27--nginx-docker-ssl-certs-self-signed/2020-08-27","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2020-08-28--nginx-docker-certbot/index","path":"/docs/DevOps/NGINX/2020-08-28--nginx-docker-certbot/2020-08-27","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2020-08-30--nginx-docker-multihost/index","path":"/docs/DevOps/NGINX/2020-08-30--nginx-docker-multihost/2020-08-30","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2021-02-22-nginx-docker-ingress/index","path":"/docs/DevOps/NGINX/2021-02-22-nginx-docker-ingress/2021-02-22","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2021-02-23-nginx-agent-redirect/index","path":"/docs/DevOps/NGINX/2021-02-23-nginx-agent-redirect/2021-02-23","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2021-07-29--certbot-nginx-autorenewal/index","path":"/docs/DevOps/NGINX/2021-07-29--certbot-nginx-autorenewal/2021-07-29","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2022-11-17-nginx-udp-tcp-load-balancing/index","path":"/docs/DevOps/NGINX/2022-11-17-nginx-udp-tcp-load-balancing/2022-11-17","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2022-12-08-nginx-websocket-proxy/index","path":"/docs/DevOps/NGINX/2022-12-08-nginx-websocket-proxy/2022-12-08","sidebar":"tutorialSidebar"},{"id":"DevOps/NGINX/2023-06-13-nginx-docker-ingress/index","path":"/docs/DevOps/NGINX/2023-06-13-nginx-docker-ingress/2023-06-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2010-02-02--svn-subversion-windows/index","path":"/docs/DevOps/Provisioning/2010-02-02--svn-subversion-windows/2010-02-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2017-09-05--developing-software-in-china/index","path":"/docs/DevOps/Provisioning/2017-09-05--developing-software-in-china/2017-09-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2017-09-06--developing-software-in-china-2/index","path":"/docs/DevOps/Provisioning/2017-09-06--developing-software-in-china-2/2017-09-06","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2018-01-26--node-express-docker-container/index","path":"/docs/DevOps/Provisioning/2018-01-26--node-express-docker-container/2018-01-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2018-01-27--express-generator-app-docker/index","path":"/docs/DevOps/Provisioning/2018-01-27--express-generator-app-docker/2018-01-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2018-01-28--express-generator-dockerrized/index","path":"/docs/DevOps/Provisioning/2018-01-28--express-generator-dockerrized/2018-01-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2018-11-10--postgresql-getting-started/index","path":"/docs/DevOps/Provisioning/2018-11-10--postgresql-getting-started/2018-11-10","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2018-12-27--red-hat-containerized-application-development-rhcs/index","path":"/docs/DevOps/Provisioning/2018-12-27--red-hat-containerized-application-development-rhcs/2018-12-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2019-01-08--creating-a-grafana-dashboard/index","path":"/docs/DevOps/Provisioning/2019-01-08--creating-a-grafana-dashboard/2019-01-08","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2019-06-15--installing-discourse-on-centos8/index","path":"/docs/DevOps/Provisioning/2019-06-15--installing-discourse-on-centos8/2019-06-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2019-06-16--migrating-from-vbulletin-to-discourse-on-centos8/index","path":"/docs/DevOps/Provisioning/2019-06-16--migrating-from-vbulletin-to-discourse-on-centos8/2019-06-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2019-06-18--using-oauth2-in-discourse/index","path":"/docs/DevOps/Provisioning/2019-06-18--using-oauth2-in-discourse/2019-06-18","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2019-06-19--using-twitter-auth-in-discourse/index","path":"/docs/DevOps/Provisioning/2019-06-19--using-twitter-auth-in-discourse/2019-06-20","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2019-06-20--using-github-auth-in-discourse/index","path":"/docs/DevOps/Provisioning/2019-06-20--using-github-auth-in-discourse/2019-06-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2019-06-21--using-facebook-auth-in-discourse/index","path":"/docs/DevOps/Provisioning/2019-06-21--using-facebook-auth-in-discourse/2019-06-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2019-09-16--installing-vanilla-forum/index","path":"/docs/DevOps/Provisioning/2019-09-16--installing-vanilla-forum/2019-09-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2020-06-07--setting-up-wikijs-in-docker/index","path":"/docs/DevOps/Provisioning/2020-06-07--setting-up-wikijs-in-docker/2020-06-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2020-07-13--infrastructure-as-code/index","path":"/docs/DevOps/Provisioning/2020-07-13--infrastructure-as-code/2020-07-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2020-08-29--static-server-with-hapi-and-docker/index","path":"/docs/DevOps/Provisioning/2020-08-29--static-server-with-hapi-and-docker/2020-08-29","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2020-09-02--docker-compose-networking/index","path":"/docs/DevOps/Provisioning/2020-09-02--docker-compose-networking/2020-09-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2020-10-01--installing-openproject-in-docker/index","path":"/docs/DevOps/Provisioning/2020-10-01--installing-openproject-in-docker/2020-10-01","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2020-10-02--installing-wazuh-in-docker/index","path":"/docs/DevOps/Provisioning/2020-10-02--installing-wazuh-in-docker/2020-10-02","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-01-22-file-transfer-tools-in-nodejs/index","path":"/docs/DevOps/Provisioning/2021-01-22-file-transfer-tools-in-nodejs/2021-01-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-01-23-nodejs-file-server/index","path":"/docs/DevOps/Provisioning/2021-01-23-nodejs-file-server/2021-01-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-01-27-owncloud-ocis/index","path":"/docs/DevOps/Provisioning/2021-01-27-owncloud-ocis/2021-01-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-04-07--loki-prometheus-grafana/index","path":"/docs/DevOps/Provisioning/2021-04-07--loki-prometheus-grafana/2021-04-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-09-13--postgres-refresher-part-i/index","path":"/docs/DevOps/Provisioning/2021-09-13--postgres-refresher-part-i/2021-09-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-09-13--postgres-refresher-part-ii/index","path":"/docs/DevOps/Provisioning/2021-09-13--postgres-refresher-part-ii/2021-09-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-09-14--postgres-refresher-hasura/index","path":"/docs/DevOps/Provisioning/2021-09-14--postgres-refresher-hasura/2021-09-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-09-14--postgres-refresher-node-json/index","path":"/docs/DevOps/Provisioning/2021-09-14--postgres-refresher-node-json/2021-09-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-10-12--traefik-configuration/index","path":"/docs/DevOps/Provisioning/2021-10-12--traefik-configuration/2021-10-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-10-12--traefik-second-attempt/index","path":"/docs/DevOps/Provisioning/2021-10-12--traefik-second-attempt/2021-10-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-10-12--traefik-third-attempt/index","path":"/docs/DevOps/Provisioning/2021-10-12--traefik-third-attempt/2021-10-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2021-10-25--matrix-secure-messaging/index","path":"/docs/DevOps/Provisioning/2021-10-25--matrix-secure-messaging/2021-10-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-01-23--installing-discourse-docker/index","path":"/docs/DevOps/Provisioning/2022-01-23--installing-discourse-docker/2022-01-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-01-24--getting-to-know-bind9-docker/index","path":"/docs/DevOps/Provisioning/2022-01-24--getting-to-know-bind9-docker/2022-01-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-01-25--installing-bind9-docker/index","path":"/docs/DevOps/Provisioning/2022-01-25--installing-bind9-docker/2022-01-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-01-26--dns-over-TLS-docker/index","path":"/docs/DevOps/Provisioning/2022-01-26--dns-over-TLS-docker/2022-01-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-01-27--bind9-configuration/index","path":"/docs/DevOps/Provisioning/2022-01-27--bind9-configuration/2022-01-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-10-16--os-ticket-docker/index","path":"/docs/DevOps/Provisioning/2022-10-16--os-ticket-docker/2022-10-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-10-27--os-ticket-rest-api/index","path":"/docs/DevOps/Provisioning/2022-10-27--os-ticket-rest-api/2022-10-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-11-07--cphalcon-docker/index","path":"/docs/DevOps/Provisioning/2022-11-07--cphalcon-docker/2022-11-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2022-11-16--mautic-docker/index","path":"/docs/DevOps/Provisioning/2022-11-16--mautic-docker/2022-11-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2023-02-13--meili-search-gatsby/index","path":"/docs/DevOps/Provisioning/2023-02-13--meili-search-gatsby/2023-02-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2023-03-09--os-ticket-docker-2023/index","path":"/docs/DevOps/Provisioning/2023-03-09--os-ticket-docker-2023/2023-03-09","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2024-01-17--ntfy-notification-service/index","path":"/docs/DevOps/Provisioning/2024-01-17--ntfy-notification-service/2024-01-17","sidebar":"tutorialSidebar"},{"id":"DevOps/Provisioning/2024-01-18--uptime-kuma-monitoring/index","path":"/docs/DevOps/Provisioning/2024-01-18--uptime-kuma-monitoring/2024-01-18","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-14--install-salt-on-ubuntu-20-04/index","path":"/docs/DevOps/Salt/2020-06-14--install-salt-on-ubuntu-20-04/2020-06-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-15--salty-devops/index","path":"/docs/DevOps/Salt/2020-06-15--salty-devops/2020-06-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-16--salt-state/index","path":"/docs/DevOps/Salt/2020-06-16--salt-state/2020-06-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-17--salt-pillars-formulas/index","path":"/docs/DevOps/Salt/2020-06-17--salt-pillars-formulas/2020-06-17","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-18--salt-execution-order/index","path":"/docs/DevOps/Salt/2020-06-18--salt-execution-order/2020-06-18","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-19--salt-mine-orchestrate/index","path":"/docs/DevOps/Salt/2020-06-19--salt-mine-orchestrate/2020-06-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-20--salt-reactor-events/index","path":"/docs/DevOps/Salt/2020-06-20--salt-reactor-events/2020-06-20","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-21--salt-events-and-thirdparty-apps/index","path":"/docs/DevOps/Salt/2020-06-21--salt-events-and-thirdparty-apps/2020-06-21","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-22--salt-nginx-state/index","path":"/docs/DevOps/Salt/2020-06-22--salt-nginx-state/2020-06-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-23--saltestack-refresh-course-1-setup/index","path":"/docs/DevOps/Salt/2020-06-23--saltestack-refresh-course-1-setup/2020-06-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-23--saltestack-refresh-course-2-salt-state/index","path":"/docs/DevOps/Salt/2020-06-23--saltestack-refresh-course-2-salt-state/2020-06-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-23--saltestack-refresh-course-3-highstate/index","path":"/docs/DevOps/Salt/2020-06-23--saltestack-refresh-course-3-highstate/2020-06-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-23--saltestack-refresh-course-4-salt-mine/index","path":"/docs/DevOps/Salt/2020-06-23--saltestack-refresh-course-4-salt-mine/2020-06-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Salt/2020-06-25--salt-orchestration-for-docker-containers/index","path":"/docs/DevOps/Salt/2020-06-25--salt-orchestration-for-docker-containers/2020-06-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Security/2020-07-26--firewalld-configuration/index","path":"/docs/DevOps/Security/2020-07-26--firewalld-configuration/2020-07-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Security/2020-07-27--firewalld-deployment-centos7/index","path":"/docs/DevOps/Security/2020-07-27--firewalld-deployment-centos7/2020-07-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Security/2020-07-27--firewalld-deployment-debian/index","path":"/docs/DevOps/Security/2020-07-27--firewalld-deployment-debian/2020-07-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Security/2020-07-27--firewalld-deployment-ubuntu/index","path":"/docs/DevOps/Security/2020-07-27--firewalld-deployment-ubuntu/2020-07-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Security/2020-07-28--fail2ban-ubuntu-server/index","path":"/docs/DevOps/Security/2020-07-28--fail2ban-ubuntu-server/2020-07-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Security/2020-07-28--uncomplicated-firewall-ufw/index","path":"/docs/DevOps/Security/2020-07-28--uncomplicated-firewall-ufw/2020-07-28","sidebar":"tutorialSidebar"},{"id":"DevOps/Security/2022-09-27--wireshark-with-tls-encryption/index","path":"/docs/DevOps/Security/2022-09-27--wireshark-with-tls-encryption/2022-09-27","sidebar":"tutorialSidebar"},{"id":"DevOps/Tomcat/2020-12-22-tomcat9-ubuntu-20-10-installation/index","path":"/docs/DevOps/Tomcat/2020-12-22-tomcat9-ubuntu-20-10-installation/2020-12-22","sidebar":"tutorialSidebar"},{"id":"DevOps/Tomcat/2020-12-23-tomcat9-configuration/index","path":"/docs/DevOps/Tomcat/2020-12-23-tomcat9-configuration/2020-12-23","sidebar":"tutorialSidebar"},{"id":"DevOps/Tomcat/2020-12-24-tomcat9-cluster-and-load-balancing/index","path":"/docs/DevOps/Tomcat/2020-12-24-tomcat9-cluster-and-load-balancing/2020-12-24","sidebar":"tutorialSidebar"},{"id":"DevOps/Tomcat/2020-12-25-tomcat10-docker-cluster/index","path":"/docs/DevOps/Tomcat/2020-12-25-tomcat10-docker-cluster/2020-12-25","sidebar":"tutorialSidebar"},{"id":"DevOps/Tomcat/2020-12-26-tomcat10-cluster-with-individual-nodes/index","path":"/docs/DevOps/Tomcat/2020-12-26-tomcat10-cluster-with-individual-nodes/2020-12-26","sidebar":"tutorialSidebar"},{"id":"DevOps/Windows/2017-07-06--windows-cmd/index","path":"/docs/DevOps/Windows/2017-07-06--windows-cmd/2017-07-06","sidebar":"tutorialSidebar"},{"id":"DevOps/Windows/2017-07-07--windows10-control/index","path":"/docs/DevOps/Windows/2017-07-07--windows10-control/2017-07-07","sidebar":"tutorialSidebar"},{"id":"DevOps/Windows/2017-12-19--umlaute-on-us-keyboard/index","path":"/docs/DevOps/Windows/2017-12-19--umlaute-on-us-keyboard/2017-12-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Windows/2019-06-09--setting-up-windows-server-2019/index","path":"/docs/DevOps/Windows/2019-06-09--setting-up-windows-server-2019/2019-06-09","sidebar":"tutorialSidebar"},{"id":"DevOps/Windows/2019-06-10--windows-server-2019-scripting-and-sharing/index","path":"/docs/DevOps/Windows/2019-06-10--windows-server-2019-scripting-and-sharing/2019-06-10","sidebar":"tutorialSidebar"},{"id":"DevOps/Windows/2019-06-11--windows-server-2019-active-directory/index","path":"/docs/DevOps/Windows/2019-06-11--windows-server-2019-active-directory/2019-06-11","sidebar":"tutorialSidebar"},{"id":"DevOps/Windows/2019-06-12--windows-server-2019-active-directory/index","path":"/docs/DevOps/Windows/2019-06-12--windows-server-2019-active-directory/2019-06-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Windows/2019-06-13--windows-server-2019-docker-daemon/index","path":"/docs/DevOps/Windows/2019-06-13--windows-server-2019-docker-daemon/2019-06-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-07-12--nagios-docker-install/index","path":"/docs/DevOps/Zabbix/2020-07-12--nagios-docker-install/2020-07-12","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-07-14--nagios-ubuntu-install/index","path":"/docs/DevOps/Zabbix/2020-07-14--nagios-ubuntu-install/2020-07-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-07-15--zabbix-docker-installation/index","path":"/docs/DevOps/Zabbix/2020-07-15--zabbix-docker-installation/2020-07-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-07-16--zabbix-agent/index","path":"/docs/DevOps/Zabbix/2020-07-16--zabbix-agent/2020-07-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-07-17--zabbix-website-monitor/index","path":"/docs/DevOps/Zabbix/2020-07-17--zabbix-website-monitor/2020-07-17","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-07-18--zabbix-email-notification/index","path":"/docs/DevOps/Zabbix/2020-07-18--zabbix-email-notification/2020-07-18","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-07-19--zabbix-company-logo/index","path":"/docs/DevOps/Zabbix/2020-07-19--zabbix-company-logo/2020-07-19","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-07-20--zabbix-behind-nginx/index","path":"/docs/DevOps/Zabbix/2020-07-20--zabbix-behind-nginx/2020-07-20","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2020-09-05--slack-notifications-in-devops/index","path":"/docs/DevOps/Zabbix/2020-09-05--slack-notifications-in-devops/2020-09-05","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2021-01-14--zabbix-apache2-monitor/index","path":"/docs/DevOps/Zabbix/2021-01-14--zabbix-apache2-monitor/2021-10-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2021-10-13--zabbix-compose-setup/index","path":"/docs/DevOps/Zabbix/2021-10-13--zabbix-compose-setup/2021-10-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-13--zabbix-api-testing/index","path":"/docs/DevOps/Zabbix/2022-01-13--zabbix-api-testing/2022-01-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-13--zabbix-server-v6/index","path":"/docs/DevOps/Zabbix/2022-01-13--zabbix-server-v6/2022-01-13","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-14--zabbix-apache2-monitor/index","path":"/docs/DevOps/Zabbix/2022-01-14--zabbix-apache2-monitor/2022-01-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-14--zabbix-docker-monitor/index","path":"/docs/DevOps/Zabbix/2022-01-14--zabbix-docker-monitor/2022-01-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-14--zabbix-http-cert-monitor/index","path":"/docs/DevOps/Zabbix/2022-01-14--zabbix-http-cert-monitor/2022-01-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-14--zabbix-nginx-monitor/index","path":"/docs/DevOps/Zabbix/2022-01-14--zabbix-nginx-monitor/2022-01-14","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-15--zabbix-grafana-dashboard/index","path":"/docs/DevOps/Zabbix/2022-01-15--zabbix-grafana-dashboard/2022-01-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-15--zabbix-v6-email-notifications/index","path":"/docs/DevOps/Zabbix/2022-01-15--zabbix-v6-email-notifications/2022-01-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-15--zabbix-v6-slack-notifications/index","path":"/docs/DevOps/Zabbix/2022-01-15--zabbix-v6-slack-notifications/2022-01-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-15--zabbix-v6-smart-hdd-check/index","path":"/docs/DevOps/Zabbix/2022-01-15--zabbix-v6-smart-hdd-check/2022-01-15","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-01-16--zabbix-v6-baseline-monitoring/index","path":"/docs/DevOps/Zabbix/2022-01-16--zabbix-v6-baseline-monitoring/2022-01-16","sidebar":"tutorialSidebar"},{"id":"DevOps/Zabbix/2022-07-15-zabbix-for-zimbra/index","path":"/docs/DevOps/Zabbix/2022-07-15-zabbix-for-zimbra/2022-07-15","sidebar":"tutorialSidebar"},{"id":"intro","path":"/docs/intro","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-01-tf-model-server/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-01-tf-model-server/2023-01-01","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-02-tf-serve-own-models/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-02-tf-serve-own-models/2023-01-02","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-03-tf-tensorboard/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-03-tf-tensorboard/2023-01-03","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-04-tf-distributed-strategy/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-04-tf-distributed-strategy/2023-01-04","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-05-dvc-model-version-control/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-05-dvc-model-version-control/2023-01-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-06-dvc-model-access/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-06-dvc-model-access/2023-01-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-22-python-ray-introduction/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-22-python-ray-introduction/2023-01-22","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-23-python-ray-remote-functions/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-23-python-ray-remote-functions/2023-01-23","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-26-python-ray-remote-actors/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-26-python-ray-remote-actors/2023-01-26","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-29-python-ray-deployments/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-29-python-ray-deployments/2023-01-29","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-01-31-python-ray-model-serving/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-01-31-python-ray-model-serving/2023-01-31","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-02-01-apache-airflow-introduction/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-02-01-apache-airflow-introduction/2023-02-01","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-02-04-apache-airflow-data-pipelines/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-02-04-apache-airflow-data-pipelines/2023-02-04","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-02-05-apache-airflow-scheduler/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-02-05-apache-airflow-scheduler/2023-02-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-02-06-apache-airflow-dynamic-dags/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-02-06-apache-airflow-dynamic-dags/2023-02-06","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-02-09-mlflow-introduction/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-02-09-mlflow-introduction/2023-02-09","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-03-27-deploying-prediction-apis-with-flask/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-03-27-deploying-prediction-apis-with-flask/2023-03-27","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-06-17-scikit-learn-model-deployment/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-06-17-scikit-learn-model-deployment/2023-06-17","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-06-18-automl-with-autogluon-tabular-data/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-06-18-automl-with-autogluon-tabular-data/2023-06-18","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-06-21-automl-with-autogluon-multiclass-nlp/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-06-21-automl-with-autogluon-multiclass-nlp/2023-06-21","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-06-23-automl-with-autogluon-timeseries-forecast/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-06-23-automl-with-autogluon-timeseries-forecast/2023-06-23","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-07-10-scikit-image-model-deployment-part1/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-07-10-scikit-image-model-deployment-part1/2023-07-10","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-07-12-scikit-image-model-deployment-part2/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-07-12-scikit-image-model-deployment-part2/2023-07-12","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-08-19-tensorflow-serving-api/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-08-19-tensorflow-serving-api/2023-08-19","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2023-09-27-zenml-intro-sklearn-pipeline/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2023-09-27-zenml-intro-sklearn-pipeline/2023-09-27","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2024-02-21-mlflow-pytorch-lightning-docker/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2024-02-21-mlflow-pytorch-lightning-docker/2024-02-21","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2024-02-24-mlflow-hyperparameter-tuning/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2024-02-24-mlflow-hyperparameter-tuning/2024-02-24","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/AIOps/2024-02-26-mlflow-with-yolov81/index","path":"/docs/IoT-and-Machine-Learning/AIOps/2024-02-26-mlflow-with-yolov81/2024-02-26","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2018-01-02--machine-learning-with-python/index","path":"/docs/IoT-and-Machine-Learning/ML/2018-01-02--machine-learning-with-python/2018-01-02","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2019-03-31--introduction-to-tensorflow-2-beta/index","path":"/docs/IoT-and-Machine-Learning/ML/2019-03-31--introduction-to-tensorflow-2-beta/2019-03-31","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2019-04-01--introduction-to-keras/index","path":"/docs/IoT-and-Machine-Learning/ML/2019-04-01--introduction-to-keras/2019-04-01","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-10-31--tesseract_ocr_arch_linux/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-10-31--tesseract_ocr_arch_linux/2021-10-31","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-01--spacy_natural_language_processing/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-01--spacy_natural_language_processing/2021-11-01","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-02--spacy_ner_predictions/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-02--spacy_ner_predictions/2021-11-02","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-03--streamlit-opencv-mediapipe/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-03--streamlit-opencv-mediapipe/2021-11-03","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-04--installing-yolov4/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-04--installing-yolov4/2021-11-04","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-05--license-plates-yolov4-opencv-tesseract/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-05--license-plates-yolov4-opencv-tesseract/2021-11-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-06--opencv-crash-course-part-i/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-06--opencv-crash-course-part-i/2021-11-06","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-07--opencv-crash-course-part-ii/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-07--opencv-crash-course-part-ii/2021-11-07","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-08--tensorflow-crash-course-part-i/activate_webcam","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-08--tensorflow-crash-course-part-i/activate_webcam","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-08--tensorflow-crash-course-part-i/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-08--tensorflow-crash-course-part-i/2021-11-08","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-09--tensorflow-crash-course-part-ii/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-09--tensorflow-crash-course-part-ii/2021-11-09","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-10--tensorflow-crash-course-part-iii/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-10--tensorflow-crash-course-part-iii/2021-11-10","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-11--tensorflow-crash-course-part-iv/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-11--tensorflow-crash-course-part-iv/2021-11-11","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-12--tensorflow-crash-course-part-v/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-12--tensorflow-crash-course-part-v/2021-11-12","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-13--tensorflow-model-zoo/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-13--tensorflow-model-zoo/2021-11-13","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-14--tensorflow-model-for-tfjs/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-14--tensorflow-model-for-tfjs/2021-11-14","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-11-15--facebook-prophet-introduction/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-11-15--facebook-prophet-introduction/2021-11-15","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-01--opencv-with-images/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-01--opencv-with-images/2021-12-01","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-02--opencv-with-videos/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-02--opencv-with-videos/2021-12-02","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-03--opencv-image-operations/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-03--opencv-image-operations/2021-12-03","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-04--opencv-image-objects/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-04--opencv-image-objects/2021-12-04","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-05--opencv-face-detection/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-05--opencv-face-detection/2021-12-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-06--opencv-object-tracking/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-06--opencv-object-tracking/2021-12-06","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-07--opencv-detection-and-tracking/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-07--opencv-detection-and-tracking/2021-12-07","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-08--opencv-meanshift-tracking/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-08--opencv-meanshift-tracking/2021-12-08","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-09--opencv-camshift-tracking/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-09--opencv-camshift-tracking/2021-12-09","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2021-12-10--opencv-optical-flow-tracking/index","path":"/docs/IoT-and-Machine-Learning/ML/2021-12-10--opencv-optical-flow-tracking/2021-12-10","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-02-15--yolo-app-get-data/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-02-15--yolo-app-get-data/2022-02-15","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-02-16--yolo-app-tensorflow-model/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-02-16--yolo-app-tensorflow-model/2022-02-16","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-02-17--yolo-app-prediction-pipeline/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-02-17--yolo-app-prediction-pipeline/2022-02-17","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-02-18--yolo-app-ocr/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-02-18--yolo-app-ocr/2022-02-18","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-02-19--yolo-app-flask/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-02-19--yolo-app-flask/2022-02-19","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-02-20--yolo-app-yolov5-data-prep/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-02-20--yolo-app-yolov5-data-prep/2022-02-20","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-04-01-tensorflow-audio-classifier/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-04-01-tensorflow-audio-classifier/2022-04-01","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-04-02-pytorch-super-resolution/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-04-02-pytorch-super-resolution/2022-04-02","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-04-03-pytorch-real-super-resolution/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-04-03-pytorch-real-super-resolution/2022-04-03","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-04-04-pytorch-face-restoration/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-04-04-pytorch-face-restoration/2022-04-04","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-11-27-containerized-deep-learning/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-11-27-containerized-deep-learning/2022-11-27","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-10-tf-breast-cancer-classification-part1/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-10-tf-breast-cancer-classification-part1/2022-12-10","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-11-tf-breast-cancer-classification-part2/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-11-tf-breast-cancer-classification-part2/2022-12-11","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-11-tf-breast-cancer-classification-part3/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-11-tf-breast-cancer-classification-part3/2022-12-11","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-11-tf-breast-cancer-classification-part4/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-11-tf-breast-cancer-classification-part4/2022-12-11","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-12-tf-breast-cancer-classification-part5/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-12-tf-breast-cancer-classification-part5/2022-12-12","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-12-tf-breast-cancer-classification-part6/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-12-tf-breast-cancer-classification-part6/2022-12-12","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-16-tf-cifar/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-16-tf-cifar/2022-12-16","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-18-tf-transfer-learning/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-18-tf-transfer-learning/2022-12-18","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-19-tf-hub/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-19-tf-hub/2022-12-19","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-20-tf-representation/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-20-tf-representation/2022-12-19","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-21-tf-deepdream/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-21-tf-deepdream/2022-12-21","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-21-tf-downsampling/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-21-tf-downsampling/2022-12-21","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-28-tf-gan-image-generator/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-28-tf-gan-image-generator/2022-12-28","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2022-12-31-tf-rnn-text-generation/index","path":"/docs/IoT-and-Machine-Learning/ML/2022-12-31-tf-rnn-text-generation/2022-12-31","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-01-05-yolov7/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-01-05-yolov7/2023-01-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-01-08-depth-vision-midas/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-01-08-depth-vision-midas/2023-01-08","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-01-10-yolov7_custom_data/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-01-10-yolov7_custom_data/2023-01-10","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-01-13-yolov7_data_conversion/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-01-13-yolov7_data_conversion/2023-01-13","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-01-14-yolov7_to_tensorflow/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-01-14-yolov7_to_tensorflow/2023-01-14","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-01-28-opencv-coin-counter/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-01-28-opencv-coin-counter/2023-01-28","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-01-30-predicting-wine-quality/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-01-30-predicting-wine-quality/2023-01-30","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-14-keras-introduction/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-14-keras-introduction/2023-02-14","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-15-as-one-yolo-object-tracking/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-15-as-one-yolo-object-tracking/2023-02-15","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-16-keras-introduction-ann/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-16-keras-introduction-ann/2023-02-16","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-17-keras-introduction-cnn/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-17-keras-introduction-cnn/2023-02-17","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-18-keras-introduction-rnn/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-18-keras-introduction-rnn/2023-02-18","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-18-keras-introduction-vgg16/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-18-keras-introduction-vgg16/2023-02-18","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-19-tensorflow-introduction/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-19-tensorflow-introduction/2023-02-19","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-21-tensorflow-tensors-2/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-21-tensorflow-tensors-2/2023-02-21","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-22-tensorflow-tensors-3/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-22-tensorflow-tensors-3/2023-02-22","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-23-tensorflow-neural-network-regression/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-23-tensorflow-neural-network-regression/2023-02-23","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-24-tensorflow-neural-network-regression-evaluation/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-24-tensorflow-neural-network-regression-evaluation/2023-02-24","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-25-tensorflow-neural-network-regression-experiments/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-25-tensorflow-neural-network-regression-experiments/2023-02-25","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-26-tensorflow-neural-network-regression-data-preprocessing/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-26-tensorflow-neural-network-regression-data-preprocessing/2023-02-26","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-26-tensorflow-neural-network-regression-real-dataset/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-26-tensorflow-neural-network-regression-real-dataset/2023-02-26","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-27-tensorflow-neural-network-classification/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-27-tensorflow-neural-network-classification/2023-02-27","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-02-28-tensorflow-neural-network-classification-model-evaluation/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-02-28-tensorflow-neural-network-classification-model-evaluation/2023-02-28","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-02-tensorflow-neural-network-multi-classification/2023-02-28-tensorflow-neural-network-classification-model-evaluation/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-02-tensorflow-neural-network-multi-classification/2023-02-28-tensorflow-neural-network-classification-model-evaluation/2023-02-28","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-02-tensorflow-neural-network-multi-classification/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-02-tensorflow-neural-network-multi-classification/2023-03-02","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-03-tensorflow-convolutional-neural-network-binary-classifications/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-03-tensorflow-convolutional-neural-network-binary-classifications/2023-03-03","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-05-tensorflow-convolutional-neural-network-multiclass-classifications/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-05-tensorflow-convolutional-neural-network-multiclass-classifications/2023-03-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-06-tensorflow-transfer-learning-feature-extraction/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-06-tensorflow-transfer-learning-feature-extraction/2023-03-06","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-11-tensorflow-transfer-learning-fine-tuning/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-11-tensorflow-transfer-learning-fine-tuning/2023-03-11","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-16-tensorflow-transfer-learning-scaling/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-16-tensorflow-transfer-learning-scaling/2023-03-16","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-24-tensorflow-unsupervised-learning-autoencoders/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-24-tensorflow-unsupervised-learning-autoencoders/2023-03-24","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-26-tensorflow-unsupervised-learning-autoencoders-super-resolution/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-26-tensorflow-unsupervised-learning-autoencoders-super-resolution/2023-03-26","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-03-26-tensorflow-unsupervised-learning-generative-adversial-networks/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-03-26-tensorflow-unsupervised-learning-generative-adversial-networks/2023-03-26","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-09-principal-component-analysis/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-09-principal-component-analysis/2023-04-09","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-11-locally-linear-embedding/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-11-locally-linear-embedding/2023-04-11","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-12-tstochastic-neighbor-embedding/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-12-tstochastic-neighbor-embedding/2023-04-12","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-13-fisher-discriminant-analysis/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-13-fisher-discriminant-analysis/2023-04-13","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-13-isometric-mapping/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-13-isometric-mapping/2023-04-13","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-13-multi-dimensional-scaling/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-13-multi-dimensional-scaling/2023-04-13","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-14-manifold-learning-for-image-segmentation/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-14-manifold-learning-for-image-segmentation/2023-04-14","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-16-deep-3d-image-segmentation/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-16-deep-3d-image-segmentation/2023-04-16","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-04-19-tensorflow-natural-language-processing/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-04-19-tensorflow-natural-language-processing/2023-04-19","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-06-26-autogluon-transit-photometry-dataset/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-06-26-autogluon-transit-photometry-dataset/2023-06-26","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-06-27-sql-in-data-science-basics/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-06-27-sql-in-data-science-basics/2023-06-27","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-06-30-sql-in-data-science-advanced/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-06-30-sql-in-data-science-advanced/2023-06-30","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-07-02-sql-in-data-science-ml/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-07-02-sql-in-data-science-ml/2023-07-02","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-07-21-introduction-to-pytorch-caffe2/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-07-21-introduction-to-pytorch-caffe2/2023-07-21","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-07-25-onnx-models/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-07-25-onnx-models/2023-07-25","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-07-26-tensorflow-human-emotion-detector/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-07-26-tensorflow-human-emotion-detector/2023-07-26","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-07-27-tensorflow-vision-transformer/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-07-27-tensorflow-vision-transformer/2023-07-27","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-01-tensorflow-i-know-flowers-intro/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-01-tensorflow-i-know-flowers-intro/2023-08-01","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-02-tensorflow-i-know-flowers-preprocessing/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-02-tensorflow-i-know-flowers-preprocessing/2023-08-02","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-03-tensorflow-i-know-flowers-deit/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-03-tensorflow-i-know-flowers-deit/2023-08-03","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-04-tensorflow-i-know-flowers-efficientnetv2b0/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-04-tensorflow-i-know-flowers-efficientnetv2b0/2023-08-04","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-05-tensorflow-i-know-flowers-efficientnetv2s/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-05-tensorflow-i-know-flowers-efficientnetv2s/2023-08-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-06-tensorflow-i-know-flowers-inceptionv3/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-06-tensorflow-i-know-flowers-inceptionv3/2023-08-06","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-07-tensorflow-i-know-flowers-mobilenetv2/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-07-tensorflow-i-know-flowers-mobilenetv2/2023-08-07","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-08-tensorflow-i-know-flowers-mobilenetv3large/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-08-tensorflow-i-know-flowers-mobilenetv3large/2023-08-08","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-09-tensorflow-i-know-flowers-mobilenetv3small/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-09-tensorflow-i-know-flowers-mobilenetv3small/2023-08-09","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-10-tensorflow-i-know-flowers-nasnetmobile/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-10-tensorflow-i-know-flowers-nasnetmobile/2023-08-10","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-11-tensorflow-i-know-flowers-vit/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-11-tensorflow-i-know-flowers-vit/2023-08-11","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-12-tensorflow-i-know-flowers-xception/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-12-tensorflow-i-know-flowers-xception/2023-08-12","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-13-tensorflow-i-know-flowers-model-eval/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-13-tensorflow-i-know-flowers-model-eval/2023-08-13","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-21--pytorch-development-in-docker/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-21--pytorch-development-in-docker/2023-08-21","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-27--image-segmentation-with-pytorch/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-27--image-segmentation-with-pytorch/2023-08-27","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-28--semantic-segmentation-detectron2-model-zoo/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-28--semantic-segmentation-detectron2-model-zoo/2023-08-28","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-29--semantic-segmentation-detectron2-model-zoo-faster-rcnn/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-29--semantic-segmentation-detectron2-model-zoo-faster-rcnn/2023-08-29","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-30--instance_segmentation_detectron2_model_zoo_mask_rcnn/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-30--instance_segmentation_detectron2_model_zoo_mask_rcnn/2023-08-30","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-08-31--semantic_segmentation_detectron2_openimages_dataset/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-08-31--semantic_segmentation_detectron2_openimages_dataset/2023-08-31","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-09-01--yolo-i-know-flowers/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-09-01--yolo-i-know-flowers/2023-09-01","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-09-05--semantic-segmentation-in-opencv/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-09-05--semantic-segmentation-in-opencv/2023-09-05","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-09-10--model-explainability-shap/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-09-10--model-explainability-shap/2023-09-11","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-09-15--yolo8-tracking-and-ocr/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-09-15--yolo8-tracking-and-ocr/2023-09-15","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-09-17--yolo8-nightshift/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-09-17--yolo8-nightshift/2023-09-17","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-09-19--cvat-computer-vision-annotation-tool/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-09-19--cvat-computer-vision-annotation-tool/2023-09-19","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-09-21--cvat-automatic-annotation/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-09-21--cvat-automatic-annotation/2023-09-21","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-09-23--yolo8-listen/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-09-23--yolo8-listen/2023-09-23","sidebar":"tutorialSidebar"},{"id":"IoT-and-Machine-Learning/ML/2023-10-01--delib-face-detection/index","path":"/docs/IoT-and-Machine-Learning/ML/2023-10-01--delib-face-detection/2023-10-01","sidebar":"tutorialSidebar"},{"id":"/category/development","path":"/docs/category/development","sidebar":"tutorialSidebar"},{"id":"/category/javascript","path":"/docs/category/javascript","sidebar":"tutorialSidebar"},{"id":"/category/python","path":"/docs/category/python","sidebar":"tutorialSidebar"},{"id":"/category/go","path":"/docs/category/go","sidebar":"tutorialSidebar"},{"id":"/category/graphs","path":"/docs/category/graphs","sidebar":"tutorialSidebar"},{"id":"/category/react-native","path":"/docs/category/react-native","sidebar":"tutorialSidebar"},{"id":"/category/magento","path":"/docs/category/magento","sidebar":"tutorialSidebar"},{"id":"/category/misc","path":"/docs/category/misc","sidebar":"tutorialSidebar"},{"id":"/category/devops","path":"/docs/category/devops","sidebar":"tutorialSidebar"},{"id":"/category/hashicorp","path":"/docs/category/hashicorp","sidebar":"tutorialSidebar"},{"id":"/category/zabbix","path":"/docs/category/zabbix","sidebar":"tutorialSidebar"},{"id":"/category/server-provisioning","path":"/docs/category/server-provisioning","sidebar":"tutorialSidebar"},{"id":"/category/gitops","path":"/docs/category/gitops","sidebar":"tutorialSidebar"},{"id":"/category/kubernetes","path":"/docs/category/kubernetes","sidebar":"tutorialSidebar"},{"id":"/category/nginx","path":"/docs/category/nginx","sidebar":"tutorialSidebar"},{"id":"/category/elasticsearch","path":"/docs/category/elasticsearch","sidebar":"tutorialSidebar"},{"id":"/category/ansible","path":"/docs/category/ansible","sidebar":"tutorialSidebar"},{"id":"/category/server-security","path":"/docs/category/server-security","sidebar":"tutorialSidebar"},{"id":"/category/linux","path":"/docs/category/linux","sidebar":"tutorialSidebar"},{"id":"/category/windows","path":"/docs/category/windows","sidebar":"tutorialSidebar"},{"id":"/category/tomcat","path":"/docs/category/tomcat","sidebar":"tutorialSidebar"},{"id":"/category/salt","path":"/docs/category/salt","sidebar":"tutorialSidebar"},{"id":"/category/machine-learning-ai-and-computer-vision","path":"/docs/category/machine-learning-ai-and-computer-vision","sidebar":"tutorialSidebar"},{"id":"/category/machine-learning","path":"/docs/category/machine-learning","sidebar":"tutorialSidebar"},{"id":"/category/aiops","path":"/docs/category/aiops","sidebar":"tutorialSidebar"},{"id":"/category/automation-deep-vision-and-robotics","path":"/docs/category/automation-deep-vision-and-robotics","sidebar":"tutorialSidebar"},{"id":"/category/home-automation","path":"/docs/category/home-automation","sidebar":"tutorialSidebar"},{"id":"/category/mqtt","path":"/docs/category/mqtt","sidebar":"tutorialSidebar"},{"id":"/category/robotics--simulation","path":"/docs/category/robotics--simulation","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/docs/intro","label":"intro"}}}}],"breadcrumbs":true}}}'),r=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var s=o(557529);const c=JSON.parse('{"docusaurusVersion":"3.1.1","siteVersion":"1.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.1.1"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"3.1.1"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.1.1"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.1.1"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.1.1"},"docusaurus-plugin-ideal-image":{"type":"package","name":"@docusaurus/plugin-ideal-image","version":"3.1.1"},"docusaurus-plugin-pwa":{"type":"package","name":"@docusaurus/plugin-pwa","version":"3.1.1"},"docusaurus-plugin-client-redirects":{"type":"package","name":"@docusaurus/plugin-client-redirects","version":"3.1.1"},"docusaurus-plugin-google-gtag":{"type":"package","name":"@docusaurus/plugin-google-gtag","version":"3.1.1"}}}');var d=o(785893);const l={siteConfig:a.default,siteMetadata:c,globalData:i,i18n:r,codeTranslations:s},p=n.createContext(l);function u(e){let{children:t}=e;return(0,d.jsx)(p.Provider,{value:l,children:t})}},873256:(e,t,o)=>{"use strict";o.d(t,{Z:()=>m});var n=o(667294),a=o(836136),i=o(631514),r=o(963905),s=o(674618),c=o(785893);function d(e){let{error:t,tryAgain:o}=e;return(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,c.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,c.jsx)("button",{type:"button",onClick:o,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,c.jsx)(l,{error:t})]})}function l(e){let{error:t}=e;const o=(0,r.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,c.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:o})}function p(e){let{error:t,tryAgain:o}=e;return(0,c.jsxs)(m,{fallback:()=>(0,c.jsx)(d,{error:t,tryAgain:o}),children:[(0,c.jsx)(i.Z,{children:(0,c.jsx)("title",{children:"Page Error"})}),(0,c.jsx)(s.Z,{children:(0,c.jsx)(d,{error:t,tryAgain:o})})]})}const u=e=>(0,c.jsx)(p,{...e});class m extends n.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){a.Z.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??u)(e)}return e??null}}},836136:(e,t,o)=>{"use strict";o.d(t,{Z:()=>a});const n="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,a={canUseDOM:n,canUseEventListeners:n&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:n&&"IntersectionObserver"in window,canUseViewport:n&&"screen"in window}},631514:(e,t,o)=>{"use strict";o.d(t,{Z:()=>i});o(667294);var n=o(370405),a=o(785893);function i(e){return(0,a.jsx)(n.ql,{...e})}},334791:(e,t,o)=>{"use strict";o.d(t,{Z:()=>m});var n=o(667294),a=o(473727),i=o(963905),r=o(639962),s=o(702735),c=o(836136),d=o(210168),l=o(779524),p=o(785893);function u(e,t){let{isNavLink:o,to:u,href:m,activeClassName:h,isActive:b,"data-noBrokenLinkCheck":f,autoAddBaseUrl:g=!0,...v}=e;const{siteConfig:{trailingSlash:x,baseUrl:y}}=(0,r.Z)(),{withBaseUrl:_}=(0,l.C)(),w=(0,d.Z)(),D=(0,n.useRef)(null);(0,n.useImperativeHandle)(t,(()=>D.current));const k=u||m;const L=(0,s.Z)(k),O=k?.replace("pathname://","");let S=void 0!==O?(M=O,g&&(e=>e.startsWith("/"))(M)?_(M):M):void 0;var M;S&&L&&(S=(0,i.applyTrailingSlash)(S,{trailingSlash:x,baseUrl:y}));const T=(0,n.useRef)(!1),A=o?a.OL:a.rU,I=c.Z.canUseIntersectionObserver,R=(0,n.useRef)(),E=()=>{T.current||null==S||(window.docusaurus.preload(S),T.current=!0)};(0,n.useEffect)((()=>(!I&&L&&null!=S&&window.docusaurus.prefetch(S),()=>{I&&R.current&&R.current.disconnect()})),[R,S,I,L]);const P=S?.startsWith("#")??!1,j=!v.target||"_self"===v.target,H=!S||!L||!j||P;return f||!P&&H||w.collectLink(S),v.id&&w.collectAnchor(v.id),H?(0,p.jsx)("a",{ref:D,href:S,...k&&!L&&{target:"_blank",rel:"noopener noreferrer"},...v}):(0,p.jsx)(A,{...v,onMouseEnter:E,onTouchStart:E,innerRef:e=>{D.current=e,I&&e&&L&&(R.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(R.current.unobserve(e),R.current.disconnect(),null!=S&&window.docusaurus.prefetch(S))}))})),R.current.observe(e))},to:S,...o&&{isActive:b,activeClassName:h}})}const m=n.forwardRef(u)},823855:(e,t,o)=>{"use strict";o.d(t,{Z:()=>n});const n=()=>null},797325:(e,t,o)=>{"use strict";o.d(t,{Z:()=>d,I:()=>c});var n=o(667294),a=o(785893);function i(e,t){const o=e.split(/(\{\w+\})/).map(((e,o)=>{if(o%2==1){const o=t?.[e.slice(1,-1)];if(void 0!==o)return o}return e}));return o.some((e=>(0,n.isValidElement)(e)))?o.map(((e,t)=>(0,n.isValidElement)(e)?n.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):o.join("")}var r=o(557529);function s(e){let{id:t,message:o}=e;if(void 0===t&&void 0===o)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return r[t??o]??o??t}function c(e,t){let{message:o,id:n}=e;return i(s({message:o,id:n}),t)}function d(e){let{children:t,id:o,values:n}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal