<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>docker Archives - Tech Antidote</title>
	<atom:link href="https://techantidote.com/tag/docker/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>‎ &#124; LINUX &#124; Tech &#124; Security &#124;</description>
	<lastBuildDate>Thu, 26 Mar 2020 21:29:03 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.4</generator>

<image>
	<url>https://techantidote.com/wp-content/uploads/2016/02/cropped-google-plus-profile-picture-32x32.png</url>
	<title>docker Archives - Tech Antidote</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">106369530</site>	<item>
		<title>Monitor a Linux host with Telgraf InfluxDB and Chronograf using Docker</title>
		<link>https://techantidote.com/monitor-a-linux-host-with-telgraf-influxdb-and-chronograf-using-docker/</link>
					<comments>https://techantidote.com/monitor-a-linux-host-with-telgraf-influxdb-and-chronograf-using-docker/#respond</comments>
		
		<dc:creator><![CDATA[]]></dc:creator>
		<pubDate>Thu, 26 Mar 2020 21:21:04 +0000</pubDate>
				<category><![CDATA[DIY]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[chronograf]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[influxdb]]></category>
		<category><![CDATA[monitor linux]]></category>
		<category><![CDATA[telegraf]]></category>
		<guid isPermaLink="false">https://techantidote.com/?p=3125</guid>

					<description><![CDATA[<p>This is a guide on how to monitor a Linux device(s) using Telgraf, InfluxDB and Chronograph. To make things easier, we will be running all these components using Docker. Requirements: Docker should be installed  [Note: Docker version 19.03.08 was used in this tutorial] Internet connectivity to pull the docker images Custom docker network Sufficient Disk &#8230; <a href="https://techantidote.com/monitor-a-linux-host-with-telgraf-influxdb-and-chronograf-using-docker/" class="more-link">Continue reading <span class="screen-reader-text">Monitor a Linux host with Telgraf InfluxDB and Chronograf using Docker</span> <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://techantidote.com/monitor-a-linux-host-with-telgraf-influxdb-and-chronograf-using-docker/">Monitor a Linux host with Telgraf InfluxDB and Chronograf using Docker</a> appeared first on <a href="https://techantidote.com">Tech Antidote</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>This is a guide on how to monitor a Linux device(s) using Telgraf, InfluxDB and Chronograph. To make things easier, we will be running all these components using Docker.</p>
<p><span style="text-decoration: underline; color: #3366ff;"><strong>Requirements:</strong></span></p>
<ul>
<li>Docker should be installed  [Note: Docker version 19.03.08 was used in this tutorial]</li>
<li>Internet connectivity to pull the docker images</li>
<li>Custom docker network</li>
<li>Sufficient Disk space to store data in InfluxDB</li>
</ul>
<p><span style="color: #3366ff;"><strong>1. Create a custom docker network:</strong></span></p>
<p>-Lets create a custom docker bridge network. Below, I have created a custom docker network with the name &#8220;influxdb&#8221;.</p>
<pre>docker network create <span style="color: #ff0000;"><strong>influxdb</strong></span>
</pre>
<p>You can name it whatever you want. You just need to make sure that name is passed in the <em>&#8211;net</em> flag in other docker commands.</p>
<p>You can verify that the network is created using the following command:</p>
<pre>docker network ls</pre>
<p>-Below are the sample outputs:</p>
<pre>extr3me@op3n:~$ <span style="color: #ff0000;">docker network ls</span>
NETWORK ID NAME DRIVER SCOPE
0d72e4098315 bridge bridge local
e3808d2b4078 host host local
d2c5b3842508 <span style="color: #ff0000;">influxdb</span> bridge local
a25ec7e0c8a2 none null local</pre>
<p>&nbsp;</p>
<p><span style="color: #3366ff;"><strong>2. Run InfluxDB:</strong></span></p>
<p>-InfluxDB is database where all the statistics of the host will be stored. To create an instance of InfluxDB, run the following command pass the network name as well as shown below:</p>
<pre>docker run -d --name=influxdb <span style="color: #ff0000;">--net=influxdb</span> influxdb</pre>
<p><span style="color: #3366ff;"><strong>3. Run Telegraf:</strong></span></p>
<p>-Before you run Telegraf, you would need to create Telegraf config file. Run the below commands to generate a sample Telegraf configuration file.</p>
<pre>mkdir telegraf
docker run --rm telegraf telegraf config &gt; telegraf/telegraf.conf
ls telegraf/</pre>
<p>-Modify the above <em>telegraf.conf</em> as per your requirement. For starters, you can un-comment the outputs.influx block and the urls section. So, the config file would have the following:</p>
<pre>[[outputs.influxdb]]
   urls = ["http://influxdb:8086"]
</pre>
<p>-The above output block tells Telegraf where the Influxdb database is located.  Once this configuration file is passed to telegraph in the next section, then Telegraf will interact with InfluxDB (read and write data) via API.</p>
<p>-Now that we have the configuration file ready, we can run Telegraf and pass the configuration file.</p>
<p>-Below I am passing /sys /proc and /etc as readonly mounts inside the container. Optionally, I have passed the docker socket as well as a bind mount so that I can monitor the resource usage of docker and the running containers too.</p>
<pre>docker run -d --restart=always --name telegraf \
<span style="color: #ff00ff;">--net=influxdb</span> --hostname=telegraf \
-e "HOST_PROC=/rootfs/proc" \
-e "HOST_SYS=/rootfs/sys" \
-e "HOST_ETC=/rootfs/etc" \
-v $(pwd)/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf:ro \
-v <strong><span style="color: #ff9900;">/var/run/docker.sock</span></strong>:/var/run/docker.sock<strong><span style="color: #ff9900;">:ro</span></strong> \
-v <span style="color: #ff0000;"><strong>/sys</strong></span>:/rootfs/sys<span style="color: #ff0000;"><strong>:ro</strong></span> \
-v <span style="color: #ff0000;"><strong>/proc</strong></span>:/rootfs/proc<span style="color: #ff0000;"><strong>:ro</strong></span> \
-v <span style="color: #ff0000;"><strong>/etc</strong></span>:/rootfs/etc<span style="color: #ff0000;"><strong>:ro</strong></span> \
<strong>telegraf</strong></pre>
<p>You can add/modify the source as you wish to monitor more data. You just need to make sure that the the necessary mounts/variables are passed as well.</p>
<p><span style="text-decoration: underline; color: #3366ff;"><strong>4. Run Chronograf:</strong></span></p>
<p>-Chronograf is used to visualize the data using a browser. It can talk to InfluxDB and display the data in forms of graphs etc.</p>
<p>-To run Chronograf, you can run the following docker command:</p>
<pre>docker run -d --name chronograf -p 8888:8888 --net=<span style="color: #ff0000;">influxdb</span> chronograf --influxdb-url=<span style="color: #ff0000;">http://influxdb:8086</span></pre>
<p>-Verify all containers are running using &#8220;<strong>docker ps -a</strong>&#8221;</p>
<pre>extr3me@op3n:~$ <span style="color: #ff0000;">docker ps -a</span>
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                          NAMES
a9da408e41b0        chronograf          "/entrypoint.sh --in_"   39 seconds ago      <span style="color: #ff0000;"><strong>Up</strong></span> 38 seconds       0.0.0.0:8888-&gt;8888/tcp         <span style="color: #ff0000;"><strong>chronograf</strong></span>
326255e6d234        telegraf            "/entrypoint.sh tele_"   36 minutes ago      <span style="color: #ff0000;"><strong>Up</strong></span> 36 minutes       8092/udp, 8125/udp, 8094/tcp   <span style="color: #ff0000;"><strong>telegraf</strong></span>
51c95679a803        influxdb            "/entrypoint.sh infl_"   About an hour ago   <span style="color: #ff0000;"><strong>Up</strong></span> About an hour    8086/tcp                       <span style="color: #ff0000;"><strong>influxdb</strong></span></pre>
<p>The above output shows that all the three containers are up and running.</p>
<p>-Now, you can access the Chronograf Dashboard from your browser by visiting the following URL.</p>
<pre>http://localhost<span style="color: #ff00ff;">:8888</span></pre>
<p>Once you are in the Chronograf UI, you can   navigate to &#8220;Host Lists&#8221; and click on host to view the collected stats.</p>
<p>Below is a screenshot of Chronograf that is displays the host information:</p>
<p><img fetchpriority="high" decoding="async" data-attachment-id="3130" data-permalink="https://techantidote.com/monitor-a-linux-host-with-telgraf-influxdb-and-chronograf-using-docker/chronograf/" data-orig-file="https://techantidote.com/wp-content/uploads/2020/03/chronograf.png" data-orig-size="1920,1080" data-comments-opened="1" data-image-title="chronograf" data-image-description="" data-image-caption="" data-large-file="https://techantidote.com/wp-content/uploads/2020/03/chronograf-1024x576.png" class="alignnone wp-image-3130 size-large" src="https://techantidote.com/wp-content/uploads/2020/03/chronograf-1024x576.png" alt="chronograf graphs" width="980" height="551" srcset="https://techantidote.com/wp-content/uploads/2020/03/chronograf-1024x576.png 1024w, https://techantidote.com/wp-content/uploads/2020/03/chronograf-300x169.png 300w, https://techantidote.com/wp-content/uploads/2020/03/chronograf-768x432.png 768w, https://techantidote.com/wp-content/uploads/2020/03/chronograf-1536x864.png 1536w, https://techantidote.com/wp-content/uploads/2020/03/chronograf-210x118.png 210w, https://techantidote.com/wp-content/uploads/2020/03/chronograf.png 1920w" sizes="(max-width: 980px) 100vw, 980px" /></p>
<p><strong><br />
<span style="text-decoration: underline;"><span style="color: #3366ff; text-decoration: underline;">Troubleshooting:</span></span></strong></p>
<p>To troubleshoot API issues, you could create a sample container in same  &#8220;influxdb&#8221; network and install curl in it.</p>
<p><em>For example</em>: You could create an alpine container attached to the influxdb network.</p>
<pre>docker run <span style="color: #ff0000;">--net=influxdb</span> -it alpine sh</pre>
<p>Then install curl using &#8220;apk add curl&#8221;. Below is the sample outputs:</p>
<pre>/ # apk add curl
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/community/x86_64/APKINDEX.tar.gz
(1/4) Installing ca-certificates (20191127-r1)
(2/4) Installing nghttp2-libs (1.40.0-r0)
(3/4) Installing libcurl (7.67.0-r0)
(4/4) Installing curl (7.67.0-r0)
Executing busybox-1.31.1-r9.trigger
Executing ca-certificates-20191127-r1.trigger
OK: 7 MiB in 18 packages</pre>
<p>-Once curl is installed, Then try the following sample InfluxDB API calls pointing to the InfluxDB endpoint from within the Alpine container:</p>
<pre>curl -i -XPOST http://influxdb:8086/query --data-urlencode "q=show databases"</pre>
<p>-Below are sample outputs:</p>
<pre>/ # curl -i -XPOST http://influxdb:8086/query --data-urlencode <span style="color: #ff0000;">"q=show databases"</span>
HTTP/1.1 200 OK
Content-Type: application/json
Request-Id: e58a61db-6fa6-11ea-85a3-0242ac120002
X-Influxdb-Build: OSS
X-Influxdb-Version: 1.7.10
X-Request-Id: e58a61db-6fa6-11ea-85a3-0242ac120002
Date: Thu, 26 Mar 2020 21:15:19 GMT
Transfer-Encoding: chunked

<span style="color: #ff0000;">{"results":[{"statement_id":0,"series":[{"name":"databases","columns":["name"],"values":[["_internal"],["telegraf"]]}]}]}
</span></pre>
<p>-Here is another example on how to to check if you are able to create a database:</p>
<pre>curl -i -XPOST http://influxdb:8086/query --data-urlencode "<span style="color: #ff0000;">q=CREATE DATABASE telegraf</span>"</pre>
<p>To troubleshoot issues related to Telegraf, you review the docker logs.</p>
<pre>docker logs -f telegraf
</pre>
<p>To troubleshoot issues with InfluxDB, you can manually access InfluxDB&#8217;s shell/CLI and run commands (just like you would in other database servers such as MySQL.)</p>
<p>Below is an example on how to view the list of databases from InfluxDB shell.</p>
<pre>docker exec -it influx sh
# <span style="color: #ff0000;">influx</span>
Connected to http://localhost:8086 version 1.7.10
InfluxDB shell version: 1.7.10
&gt; <span style="color: #ff0000;">show databases
</span>name: databases
name
----
_internal
telegraf</pre>
<p>I hope this helps. Do share, leave a like/comment below! Cheers!</p>
<p>&nbsp;</p>
<p><strong><span style="color: #3366ff;">Regards,</span></strong></p>
<p><span style="color: #3366ff;"><strong>ΞXΤЯ3МΞ</strong></span></p>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;"><strong>Sources/References:</strong></span></p>
<p>https://hub.docker.com/_/telegraf/<br />
https://hub.docker.com/_/chronograf/<br />
https://www.jacobtomlinson.co.uk/monitoring/2016/06/23/running-telegraf-inside-a-container/</p>
<p>The post <a href="https://techantidote.com/monitor-a-linux-host-with-telgraf-influxdb-and-chronograf-using-docker/">Monitor a Linux host with Telgraf InfluxDB and Chronograf using Docker</a> appeared first on <a href="https://techantidote.com">Tech Antidote</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://techantidote.com/monitor-a-linux-host-with-telgraf-influxdb-and-chronograf-using-docker/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3125</post-id>	</item>
		<item>
		<title>DIY Motion Detecting Surveillance Camera using Pi Zero W, Docker &#038; USB Webcam</title>
		<link>https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/</link>
					<comments>https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/#respond</comments>
		
		<dc:creator><![CDATA[]]></dc:creator>
		<pubDate>Sat, 05 Jan 2019 22:30:37 +0000</pubDate>
				<category><![CDATA[DIY]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[c170]]></category>
		<category><![CDATA[cctv]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[dvr]]></category>
		<category><![CDATA[motion]]></category>
		<category><![CDATA[rasp]]></category>
		<category><![CDATA[Surveillance]]></category>
		<category><![CDATA[webcam]]></category>
		<category><![CDATA[zero w]]></category>
		<guid isPermaLink="false">https://techantidote.com/?p=2876</guid>

					<description><![CDATA[<p>This is project build using &#8220;motion&#8221; which a software based motion detector. I have created a docker image for this project for portability reasons inside my Pi Zero W. So what does this project do? &#8211; If you need a surveillance system for your home you can build it yourself pretty cheap using a Raspberry &#8230; <a href="https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/" class="more-link">Continue reading <span class="screen-reader-text">DIY Motion Detecting Surveillance Camera using Pi Zero W, Docker &#038; USB Webcam</span> <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/">DIY Motion Detecting Surveillance Camera using Pi Zero W, Docker &#038; USB Webcam</a> appeared first on <a href="https://techantidote.com">Tech Antidote</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>This is project build using &#8220;motion&#8221; which a software based motion detector. I have created a docker image for this project for portability reasons inside my Pi Zero W.</p>
<p><span style="color: #3366ff;"><strong>So what does this project do?</strong></span></p>
<p>&#8211; If you need a surveillance system for your home you can build it yourself pretty cheap using a Raspberry PI and a webcam.</p>
<p>&#8211; Configure webcam it to stream and record footage full time or record only when a motion is detected.</p>
<p>&#8211; Moreover, this a fun project to run docker on  a Pi simply to test docker for Pi Zero.</p>
<p>&#8211; This could be run on Pi Zero W/Pi 3/Pi 3 Model B/Banna PI/Orange Pi as well.</p>
<p><span style="color: #3366ff;"><strong>What not to expect?</strong></span></p>
<p>-Well, this is a Pi zero. So, don&#8217;t expect it to render 1080p at 60fps. <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f61b.png" alt="😛" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><span style="color: #3366ff;"><strong>Requirements:</strong></span></p>
<ul>
<li>Raspberry Pi Zero W connected to your local Wifi network [Raspberry Pi 3 is recommended.]</li>
<li>Docker 18.06.1-ce installed on Pi Zero.</li>
<li>USB webcam.</li>
<li>Sufficient disk space on your SD to store the footage.</li>
<li>Lots of patience <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></li>
</ul>
<p><span style="color: #3366ff;"><strong>Setting up your Raspberry PI:</strong></span></p>
<p>First, we need to create a folder where we need to store the footage. So, SSH into your Raspberry Pi.</p>
<p>Create a folder where you would like to store the footage. We will be using this folder later to map inside the docker container. Example, create a folder called &#8220;surv&#8221;.</p>
<pre>mkdir ~/surv</pre>
<p>Unplug any USB devices connected to your Pi, then type in the following:</p>
<pre>dmesg -w</pre>
<p>Plug in your USB webcam to your Raspberry PI Zero, and you should see that the webcam is connected. Below are some sample logs, that I got once I connected the usb webcam:</p>
<p><img decoding="async" data-attachment-id="2902" data-permalink="https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/dmesg/" data-orig-file="https://techantidote.com/wp-content/uploads/2019/01/dmesg.png" data-orig-size="1070,289" data-comments-opened="1" data-image-title="dmesg" data-image-description="" data-image-caption="" data-large-file="https://techantidote.com/wp-content/uploads/2019/01/dmesg-1024x277.png" class="alignnone wp-image-2902 size-full" src="https://techantidote.com/wp-content/uploads/2019/01/dmesg.png" alt="dmesg -w logs" width="1070" height="289" srcset="https://techantidote.com/wp-content/uploads/2019/01/dmesg.png 1070w, https://techantidote.com/wp-content/uploads/2019/01/dmesg-300x81.png 300w, https://techantidote.com/wp-content/uploads/2019/01/dmesg-768x207.png 768w, https://techantidote.com/wp-content/uploads/2019/01/dmesg-1024x277.png 1024w, https://techantidote.com/wp-content/uploads/2019/01/dmesg-192x52.png 192w" sizes="(max-width: 1070px) 100vw, 1070px" /></p>
<p>Additionally, you could run the following to view connected video devices:</p>
<pre>v4l2-ctl --list-devices
ls -l /dev/video0
</pre>
<p><img decoding="async" data-attachment-id="2904" data-permalink="https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/view-devices/" data-orig-file="https://techantidote.com/wp-content/uploads/2019/01/view-devices.png" data-orig-size="460,139" data-comments-opened="1" data-image-title="view-devices" data-image-description="" data-image-caption="" data-large-file="https://techantidote.com/wp-content/uploads/2019/01/view-devices.png" class="alignnone wp-image-2904 size-full" src="https://techantidote.com/wp-content/uploads/2019/01/view-devices.png" alt="view devices" width="460" height="139" srcset="https://techantidote.com/wp-content/uploads/2019/01/view-devices.png 460w, https://techantidote.com/wp-content/uploads/2019/01/view-devices-300x91.png 300w, https://techantidote.com/wp-content/uploads/2019/01/view-devices-192x58.png 192w" sizes="(max-width: 460px) 100vw, 460px" /></p>
<p>You should ideally see the USB webcam in the dmesg logs and in the lsusb outputs.</p>
<p>&#8211; Pull the docker image:</p>
<pre>docker pull techantidote/motion</pre>
<p>To run the docker container, run the following:</p>
<pre>docker run -dit --net=host --privileged <span style="color: #ff0000;">-v /dev/video0:/dev/video0</span> -v ~/surv:/footage --name watchtower techantidote/motion motion -n</pre>
<p>Here, we are passing the /dev/video0 which the camera attached to the rasbperry pi to /dev/video0.</p>
<p>To view the live stream, open a browser and go to:</p>
<pre>http://ip-of-your-pi:8081</pre>
<p><span style="color: #3366ff;"><strong>Alternative method:<br />
</strong></span></p>
<p>If you are testing the configuration, you can try the following:</p>
<pre>docker run -dit --net=host --privileged <span style="color: #ff0000;">-v /dev/video0:/dev/video0</span> -v ~/surv:/footage --name watchtower techantidote/motion</pre>
<p>Now from inside the container, you can make changes to your configuration files and then start the motion service manually using the following:</p>
<pre>service motion start</pre>
<p>You can make now changes on the fly and then restart the motion service:</p>
<pre>service motion restart</pre>
<p>[Note: You may have to restart the docker container &#8220;docker start watchtower&#8221;]</p>
<p>I have already added the configuration files inside the docker image itself. If you need to tweak the settings such as the resolution/frame rates, you can edit the below two configuration files inside the docker container:</p>
<pre>/etc/motion/motion.conf
/etc/default/motion</pre>
<p>The log files for motion detection are stored in /var/log/motion/logs. If you would to view the log files real time, you run the following command:</p>
<pre>docker exec -it watchtower <span style="color: #ff0000;">tail -f /var/log/motion/logs</span></pre>
<p><img loading="lazy" decoding="async" data-attachment-id="2908" data-permalink="https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/logs/" data-orig-file="https://techantidote.com/wp-content/uploads/2019/01/logs.png" data-orig-size="910,215" data-comments-opened="1" data-image-title="logs" data-image-description="" data-image-caption="" data-large-file="https://techantidote.com/wp-content/uploads/2019/01/logs.png" class="alignnone wp-image-2908 " src="https://techantidote.com/wp-content/uploads/2019/01/logs.png" alt="motion detection docker logs" width="746" height="176" srcset="https://techantidote.com/wp-content/uploads/2019/01/logs.png 910w, https://techantidote.com/wp-content/uploads/2019/01/logs-300x71.png 300w, https://techantidote.com/wp-content/uploads/2019/01/logs-768x181.png 768w, https://techantidote.com/wp-content/uploads/2019/01/logs-192x45.png 192w" sizes="auto, (max-width: 746px) 100vw, 746px" /></p>
<p><span style="color: #3366ff;">Conclusions:</span></p>
<p>-Running docker inside a Pi Zero for motion detection may not be the best idea.</p>
<p>-Flashing MotionEyeOS which is <span class="text-gray-dark mr-2">Video Surveillance OS</span> designed to run on single board computers.</p>
<p><span style="color: #3366ff;">Want to contribute to this project?</span></p>
<p>If you would like to contribute to this project, feel free to reach out to me at twitter. @<span style="color: #ff0000;"><strong>techantidote</strong></span></p>
<p><span style="color: #3366ff;"><strong>Docker Image for Pi Zero W:</strong></span></p>
<p><a href="https://hub.docker.com/r/techantidote/motion">https://hub.docker.com/r/techantidote/motion</a></p>
<p><span style="text-decoration: underline;"><span style="color: #3366ff;"><strong>Credits/References:</strong></span></span></p>
<p>Thanks to <a href="https://motion-project.github.io/">motion-project</a><br />
Base image used for building the image =&gt; <a href="https://hub.docker.com/r/resin/rpi-raspbian" target="_blank" rel="noopener">resin/rpi-raspbian:stretch</a><br />
Accessing hardware device such as a <a href="https://stackoverflow.com/questions/33985648/access-camera-inside-docker-container" target="_blank" rel="noopener">camera from inside a container</a>.</p>
<p>The post <a href="https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/">DIY Motion Detecting Surveillance Camera using Pi Zero W, Docker &#038; USB Webcam</a> appeared first on <a href="https://techantidote.com">Tech Antidote</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://techantidote.com/diy-motion-detecting-surveillance-camera-using-pi-zero-w-docker-usb-webcam/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2876</post-id>	</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 
Minified using Disk

Served from: techantidote.com @ 2026-10-31 13:54:12 by W3 Total Cache
-->