You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+34-15Lines changed: 34 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,29 +17,46 @@ netPI features a restricted Docker protecting the system software's integrity by
17
17
18
18
### Container features
19
19
20
-
The image provided hereunder deploys a container with Debian, SSH server, Raspberry Pi userland tool and created user pi.
20
+
The image provided hereunder deploys a container with Debian, SSH server, pre-compiled software/packages typically found installed on Raspbian OS (inclusive userland tools) and default user pi.
21
21
22
-
Base of this image builds [debian](https://www.balena.io/docs/reference/base-images/base-images/) with enabled [SSH](https://en.wikipedia.org/wiki/Secure_Shell), created user 'pi' and preinstalled packages of a headless Raspbian lite.
22
+
Base of this image builds [debian](https://www.balena.io/docs/reference/base-images/base-images/) with enabled [SSH](https://en.wikipedia.org/wiki/Secure_Shell), installed [userland](https://github.com/raspberrypi/userland) tools, created user 'pi' and preinstalled packages of a Raspbian lite operating system (headless).
23
23
24
24
### Container setup
25
25
26
-
#### Port mapping
26
+
#### Network mode
27
27
28
-
For a SSH login to the container any unused netPI host port needs to be added to the container port `22` (SSH).
28
+
The container supports bridged or host network mode. More details at [Container networking](https://docs.docker.com/v17.09/engine/userguide/networking/).
29
+
30
+
##### Bridged
31
+
32
+
Any unused netPI host port needs to be mapped to the container port `22` to expose the container SSH server to the host.
33
+
34
+
Remark: Container bluetooth communications are supported in host network mode only.
35
+
36
+
##### Host
37
+
38
+
Port mapping is unnecessary since all the used container ports (like 22) are exposed to the host automatically.
39
+
40
+
Remark: Host network mode is mandatory for container bluetooth communications.
29
41
30
42
#### Hostname (optional)
31
43
32
-
For an equal standard Raspberry Pi condition set the container hostname to `raspberrypi`.
44
+
For an equal default Raspbian OS hostname set the container hostname to `raspberrypi`.
33
45
34
46
#### Privileged mode (optional)
35
47
36
-
The privileged mode option needs to be activated to lift the standard Docker enforced container limitations. With this setting the container and the applications inside are the getting (almost) all capabilities as if running on the Host directly.
48
+
The privileged mode lifts the standard Docker enforced container limitations: applications inside a container are getting (almost) all capabilities as if running on the host directly.
49
+
50
+
Enabling the privileged mode is optional but mandatory for the following container functions:
51
+
52
+
* bluetooth communications
53
+
* using userland tools
37
54
38
-
netPI's secure reference software architecture prohibits root access to the Host system always. Even if priviledged mode is activated the intrinsic security of the Host Linux Kernel can not be compromised.
55
+
#### Host devices (optional)
39
56
40
-
#### Host device (optional)
57
+
For bluetooth communications the `/dev/ttyAMA0` host device needs to be added to the container. In conjunction the `/dev/vcio` host device needs be added to the container too to allow proper bluetooth controller resets.
41
58
42
-
The container includes the [userland](https://github.com/raspberrypi/userland) tools installed with original Raspbian OS too. To grant access of tools like [vcmailbox](https://github.com/raspberrypi/userland/blob/master/host_applications/linux/apps/vcmailbox/vcmailbox.c) the `/dev/vcio` and `/dev/vchiq` and `/dev/vc-mem` host devices need to be exposed to the container. (Prerequisite is running the container in privileged mode).
59
+
For using userland tools like [vcmailbox](https://github.com/raspberrypi/userland/blob/master/host_applications/linux/apps/vcmailbox/vcmailbox.c) the `/dev/vcio` and `/dev/vchiq` and `/dev/vc-mem` host devices need to be added to the container.
43
60
44
61
### Container deployment
45
62
@@ -52,21 +69,23 @@ STEP 3. Enter the following parameters under *Containers > + Add Container*
52
69
Parameter | Value | Remark
53
70
:---------|:------ |:------
54
71
*Image* | **hilschernetpi/netpi-raspbian**
72
+
*Network > Network* | **bridge** or **host** | use alternatively
STEP 4. Press the button *Actions > Start/Deploy container*
64
83
65
84
Pulling the image may take a while (5-10mins). Sometimes it may take too long and a time out is indicated. In this case repeat STEP 4.
66
85
67
86
### Container access
68
87
69
-
The container automatically starts the SSH server. For a SSH session use a SSH client such as [putty](http://www.putty.org/) with the netPI IP address (@mapped SSH host port number).
88
+
The container automatically starts the SSH server. For a SSH terminal session use a SSH client such as [putty](http://www.putty.org/) with the netPI IP address (@mapped SSH host port number).
70
89
71
90
Use the credentials `pi` as user and `raspberry` as password when asked and you are logged in as non-root user `pi`.
0 commit comments