Skip to content

Commit 93b10ad

Browse files
Merge pull request #31 from Paraphraser/20200421-doco-index
Fixes some inconsistencies and makes other tweaks to index page
2 parents d86a5cd + a7d37c0 commit 93b10ad

File tree

1 file changed

+50
-29
lines changed

1 file changed

+50
-29
lines changed

docs/index.md

Lines changed: 50 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
1-
# IOTStack
1+
# IOTstack
22

3-
IOTstack is a builder for docker-compose to easily make and maintain IoT stacks on the Raspberry Pi
3+
IOTstack is a builder for docker-compose to easily make and maintain IoT stacks on the Raspberry Pi.
44

55
## Announcements
66

7-
The bulk of the README has moved to the Wiki. Please check it out [here](https://github.com/gcgarner/IOTstack/wiki)
8-
97
* 2019-12-19 Added python container, tweaked update script
108
* 2019-12-12 modified zigbee2mqtt template file
119
* 2019-12-12 Added Function to add custom containers to the stack
@@ -25,15 +23,15 @@ The bulk of the README has moved to the Wiki. Please check it out [here](https:/
2523
* 2019-11-20 BUGFIX influxdb backup: Placing docker_backup in crontab caused influxdb backup not to execute correctly
2624
* 2019-11-20 BUGFIX disable swap: swapfile recreation on reboot fixed. Re-run from menu to fix.
2725
* Node-RED: serial port. New template adds privileged which allows acces to serial devices
28-
* EspurinoHub: is available for testing see wiki entry
26+
* EspruinoHub: available for testing
2927

3028
***
3129

3230
## Highlighted topics
3331

34-
* [Bluetooth and Node-RED](https://github.com/gcgarner/IOTstack/wiki/Node-RED#using-bluetooth)
35-
* [Saving files to disk inside containers](https://github.com/gcgarner/IOTstack/wiki/Node-RED#sharing-files-between-node-red-and-the-host)
36-
* [Updating the Project](https://github.com/gcgarner/IOTstack/wiki/Updating-the-Project)
32+
* [Bluetooth and Node-RED](https://sensorsiot.github.io/IOTstack/Node-RED#using-bluetooth)
33+
* [Saving files to disk inside containers](https://sensorsiot.github.io/IOTstack/Node-RED#sharing-files-between-node-red-and-the-host)
34+
* [Updating the Project](https://sensorsiot.github.io/IOTstack/Updating-the-Project/)
3735

3836
***
3937

@@ -90,47 +88,47 @@ For those looking for a script that installs native applications check out [Pete
9088

9189
## Tested platform
9290

93-
Raspberry Pi 3B and 4B Raspbian (Buster)
91+
Raspberry Pi 3B and 4B Raspbian (Buster).
9492

9593
### Older Pi's
9694

97-
Docker will not run on a PiZero or A model 1 because of the CPU. It has not been tested on a Model 2. You can still use Peter Scargill's [script](https://tech.scargill.net/the-script/)
95+
Docker will not run on a PiZero or A model 1 because of the CPU. It has not been tested on a Model 2. You can still use Peter Scargill's [script](https://tech.scargill.net/the-script/).
9896

9997
## Running under a virtual machine
10098

101-
For those wanting to test out the script in a Virtual Machine before installing on their Pi there are some limitations. The script is designed to work with Debian based distributions. Not all the container have x86_64 images. For example Portainer does not and will give an error when you try and start the stack. Please see the pinned issue [#29](https://github.com/gcgarner/IOTstack/issues/29), there is more info there.
99+
For those wanting to test out the script in a Virtual Machine before installing on their Pi there are some limitations. The script is designed to work with Debian based distributions. Not all the container have x86_64 images. For example Portainer does not and will give an error when you try and start the stack.
102100

103101
## Feature Requests
104102

105-
Please direct all feature requests to [Discord](https://discord.gg/W45tD83)
103+
Please direct all feature requests to [Discord](https://discord.gg/W45tD83).
106104

107105
## Youtube reference
108106

109107
This repo was originally inspired by Andreas Spiess's video on using some of these tools. Some containers have been added to extend its functionality.
110108

111-
[YouTube video](https://www.youtube.com/watch?v=JdV4x925au0): This is an alternative approach to the setup. Be sure to watch the video for the instructions. Just note that the network addresses are different, see the wiki under Docker Networks.
109+
[YouTube video](https://www.youtube.com/watch?v=JdV4x925au0): This is an alternative approach to the setup. Be sure to watch the video for the instructions. Just note that the network addresses are different, see [Networking](https://sensorsiot.github.io/IOTstack/Networking/).
112110

113111
### YouTube guide
114112

115-
@peyanski (Kiril) made a YouTube video on getting started using the project, check it out [here](https://youtu.be/5JMNHuHv134)
113+
@peyanski (Kiril) made a [YouTube video](https://youtu.be/5JMNHuHv134) on getting started using the project.
116114

117115
## Download the project
118116

119-
1.On the lite image you will need to install git first
117+
1. On the lite image you will need to install git first.
120118

121119
```bash
122-
sudo apt-get install git
120+
sudo apt install git
123121
```
124122

125-
2.Download the repository with:
123+
2. Download the repository with:
126124

127125
```bash
128-
git clone https://github.com/gcgarner/IOTstack.git ~/IOTstack
126+
git clone https://github.com/SensorsIot/IOTstack.git ~/IOTstack
129127
```
130128

131129
Due to some script restraints, this project needs to be stored in ~/IOTstack
132130

133-
3.To enter the directory run:
131+
3. To enter the directory run:
134132

135133
```bash
136134
cd ~/IOTstack
@@ -139,13 +137,13 @@ cd ~/IOTstack
139137
## The Menu
140138

141139
I've added a menu to make things easier. It is good to familiarise yourself with the installation process.
142-
The menu can be used to install docker and build the docker-compose.yml file necessary for starting the stack. It also runs a few common commands. I do recommend you start to learn the docker and docker-compose commands if you plan on using docker in the long run. I've added several helper scripts, have a look inside.
140+
The menu can be used to install docker and build the docker-compose.yml file necessary for starting the stack. It also runs a few common commands. I do recommend you start to learn the docker and docker-compose commands if you plan on using Docker in the long run. I've added several helper scripts, have a look inside.
143141

144142
Navigate to the project folder and run `./menu.sh`
145143

146-
### Installing from the menu
144+
### Installing Docker from the menu
147145

148-
Select the first option and follow the prompts
146+
Select "Install Docker" and follow the prompts. This ends with a reboot.
149147

150148
### Build the docker-compose file
151149

@@ -165,13 +163,19 @@ From this point on make sure you are executing the commands from inside the proj
165163

166164
## Starting and Stopping containers
167165

168-
to start the stack navigate to the project folder containing the docker-compose.yml file
166+
To start the stack:
169167

170-
To start the stack run:
171-
`docker-compose up -d` or `./scripts/start.sh`
168+
```bash
169+
cd ~/IOTstack
170+
docker-compose up -d
171+
```
172172

173-
To stop:
174-
`docker-compose stop`
173+
To stop the stack:
174+
175+
```bash
176+
cd ~/IOTstack
177+
docker-compose stop
178+
```
175179

176180
The first time you run 'start' the stack docker will download all the images for the web. Depending on how many containers you selected and your internet speed this can take a long while.
177181

@@ -181,9 +185,26 @@ The `docker-compose down` command stops the containers then deletes them.
181185

182186
Docker allows you to map folders inside your containers to folders on the disk. This is done with the "volume" key. There are two types of volumes. Modification to the container are reflected in the volume.
183187

184-
## See Wiki for further info
188+
## Networking
189+
190+
One common problem newcomers face is understanding that Docker creates an internal bridged network. A process running inside one container reaches a process running inside another container by using the **name** of that other container as the domain name. For example, if a Node-Red flow needs to:
191+
192+
* subscribe to an MQTT topic being managed by Mosquitto, it refers to "mosquitto" as the domain name and communicates over port 1883.
193+
* send data to InfluxDB, it refers to "influxdb" as the domain name and communicates over port 8086.
194+
195+
In particular, if you are migrating Node-Red flows from a non-Docker environment, they will probably contain references to the loopback address (127.0.0.1). Those will need to be updated.
196+
197+
Similarly, if you are migrating a Grafana dashboard that relies on, say, InfluxDB as for its data. The data source will need to be updated to refer to "influxdb:8086".
198+
199+
You can discover container names like this:
200+
201+
```bash
202+
cd ~/IOTstack
203+
docker-compose ps
204+
```
205+
206+
See also [Networking](https://sensorsiot.github.io/IOTstack/Networking/).
185207

186-
[Wiki](https://github.com/gcgarner/IOTstack/wiki)
187208

188209
## Add to the project
189210

0 commit comments

Comments
 (0)