Skip to content

Commit 4669415

Browse files
committed
docs[bookworm]: Updated doc for v5
1 parent e2d2513 commit 4669415

File tree

3 files changed

+226
-21
lines changed

3 files changed

+226
-21
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ jobs:
402402
needs: [test_build, cpan_build]
403403
strategy:
404404
matrix:
405-
dockerfile: [-bullseye, -threaded-bullseye, -bookworm, -threaded-bookworm]
405+
dockerfile: [-bookworm, -threaded-bookworm]
406406
env:
407407
TAG_LATEST: ${{ (contains(matrix.dockerfile,'threaded') || github.event.release.prerelease == 1) && 'false' || 'auto' }}
408408
# Steps represent a sequence of tasks that will be executed as part of the job

README.md

Lines changed: 40 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ A Docker image for [FHEM](https://fhem.de/) house automation system, based on De
1010

1111
## Installation
1212
Pre-build images are available on [Docker Hub](https://hub.docker.com/r/fhem/fhem)
13-
Reccomended pulling from [Github Container Registry](https://github.com/orgs/fhem/packages) to allow automatic image for your system.
13+
Recommended pulling from [Github Container Registry](https://github.com/orgs/fhem/packages) to allow automatic image for your system.
1414

1515
### From Docker Hub
1616

@@ -20,23 +20,36 @@ Reccomended pulling from [Github Container Registry](https://github.com/orgs/fhe
2020

2121
#### Image with serval services installed
2222

23-
Updated versions based on
23+
##### Version 5 (beta)
24+
25+
- debian bookworm
26+
- Perl 5.36.3 (optional threaded)
27+
- NodeJS 18.19 LTS
28+
- Python 3.11.2
29+
- Supported Plattforms: linux/amd64, linux/arm/v7, linux/arm64
30+
- NOTE: alexa-fhem, alexa-cookie, gassistant-fhem, homebridge, homebridge-fhem, tradfri-fhem are not installed per default!
31+
32+
docker pull ghcr.io/fhem/fhem-docker:5-bullseye
33+
docker pull ghcr.io/fhem/fhem-docker:5-threaded-bullseye
34+
35+
##### Version 4 - EOL Jan 2025
36+
2437
- debian bullseye
2538
- Perl 5.36.3 (optional threaded)
2639
- NodeJS 18 LTS
2740
- Python 3.9.2
2841
- Python 2.7.18
2942
- Supported Plattforms: linux/amd64, linux/arm/v7, linux/arm64
30-
- NOTE: alexa-fhem, alexa-cookie, gassistant-fhem, homebridge, homebridge-fhem, tradfri-fhem are not installed per default!
43+
- NOTE: alexa-fhem, alexa-cookie, gassistant-fhem, homebridge, homebridge-fhem, tradfri-fhem are not installed per default!
3144

32-
docker pull ghcr.io/fhem/fhem-docker:4-bullseye
33-
docker pull ghcr.io/fhem/fhem-docker:4-threaded-bullseye
45+
docker pull ghcr.io/fhem/fhem-docker:4-bookworm
46+
docker pull ghcr.io/fhem/fhem-docker:4-threaded-bookworm
3447

3548
If you are using 3rd Party modules which are not available on the FHEM svn repository, you may need this image, because it has more perl modules preinstalled.
3649

3750
To let this image work correctly, you need as least a FHEM revision 25680 or newer.
3851

39-
##### Not updated anymore since Jan 2024
52+
##### Version 3 - EOL Jan 2024
4053

4154
- debian buster
4255
- Perl 5.28.1
@@ -53,7 +66,23 @@ To let this image work correctly, you need as least a FHEM revision 25680 or new
5366

5467
#### Image with perl core services installed
5568

56-
- debian bullseye
69+
70+
##### Version 5 (beta)
71+
72+
- debian bookworm
73+
- Perl 5.36.3 (optional threaded)
74+
- Python 3.11.2
75+
- Python 2.7.18
76+
- Supported Plattforms: linux/amd64, linux/arm/v7, linux/arm64, linux/i386,
77+
78+
docker pull ghcr.io/fhem/fhem-minimal-docker:5-bookworm
79+
docker pull ghcr.io/fhem/fhem-minimal-docker:5-threaded-bookworm
80+
81+
If you are using only modules which are provided via FHEM svn repository, you mostly can use this smaller image.
82+
83+
##### Version 4 - EOL Jan 2025
84+
85+
- debian bullseye
5786
- Perl 5.36.3 (optional threaded)
5887
- Python 3.9.2
5988
- Python 2.7.18
@@ -64,7 +93,7 @@ To let this image work correctly, you need as least a FHEM revision 25680 or new
6493

6594
If you are using only modules which are provided via FHEM svn repository, you mostly can use this smaller image.
6695

67-
##### Not updated anymore since Jan 2024
96+
##### Version 3 - EOL Jan 2024
6897

6998
- debian buster
7099
- Perl 5.28.1
@@ -77,13 +106,13 @@ If you are using only modules which are provided via FHEM svn repository, you mo
77106

78107
#### To start your container right away:
79108

80-
docker run -d --name fhem -p 8083:8083 ghcr.io/fhem/fhem-docker:4-bullseye
109+
docker run -d --name fhem -p 8083:8083 ghcr.io/fhem/fhem-docker:5-bookworm
81110

82111
#### Storage
83112
Usually you want to keep your FHEM setup after a container was destroyed (or re-build) so it is a good idea to provide an external directory on your Docker host to keep that data:
84113

85114

86-
docker run -d --name fhem -p 8083:8083 -v /some/host/directory:/opt/fhem ghcr.io/fhem/fhem-docker:4-bullseye
115+
docker run -d --name fhem -p 8083:8083 -v /some/host/directory:/opt/fhem ghcr.io/fhem/fhem-docker:5-bookworm
87116

88117
You will find more general information about using volumes from the Docker documentation for [Use volumes](https://docs.docker.com/storage/volumes/) and [Bind mounts](https://docs.docker.com/storage/bind-mounts/).
89118

@@ -125,7 +154,7 @@ With this, you will create a new image, and install any tool which you additiona
125154
build:
126155
context: .
127156
dockerfile_inline: |
128-
FROM ghcr.io/fhem/fhem-docker:4-bullseye
157+
FROM ghcr.io/fhem/fhem-docker:5-bookworm
129158
RUN <<EOF
130159
LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get update
131160
LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get install -qqy --no-install-recommends <DEBIAN PACKAGENAME>

docker-compose.yml

Lines changed: 185 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,183 @@ services:
2222
#
2323

2424
# Minimum example w/o any custom environment variables
25-
fhem:
25+
fhem_5_a:
26+
image: ghcr.io/fhem/fhem-docker:5-bookworm
27+
restart: always
28+
networks:
29+
- net
30+
ports:
31+
- "8083:8083"
32+
volumes:
33+
- "./fhem/:/opt/fhem/"
34+
35+
# Example w/ custom environment variables
36+
fhem_5_b:
37+
image: ghcr.io/fhem/fhem-docker:5-bookworm
38+
restart: always
39+
networks:
40+
- net
41+
ports:
42+
- "8083:8083"
43+
volumes:
44+
- "./fhem/:/opt/fhem/"
45+
environment:
46+
FHEM_UID: 6061
47+
FHEM_GID: 6061
48+
TIMEOUT: 10
49+
RESTART: 1
50+
TELNETPORT: 7072
51+
TZ: Europe/Berlin
52+
# CONFIGTYPE: configDB
53+
54+
# Example to connect USB to the container w/o
55+
# privileged mode (preferred method)
56+
fhem_5_c:
57+
image: ghcr.io/fhem/fhem-docker:5-bookworm
58+
restart: always
59+
networks:
60+
- net
61+
ports:
62+
- "8083:8083"
63+
volumes:
64+
- "./fhem/:/opt/fhem/"
65+
devices:
66+
- "/dev/ttyUSB0:/dev/ttyUSB0"
67+
environment:
68+
FHEM_UID: 6061
69+
FHEM_GID: 6061
70+
TIMEOUT: 10
71+
RESTART: 1
72+
TELNETPORT: 7072
73+
TZ: Europe/Berlin
74+
75+
# Example to connect USB to the container w/
76+
# privileged mode (not recommended for security reasons)
77+
fhem_5_d:
78+
image: ghcr.io/fhem/fhem-docker:5-bookworm
79+
restart: always
80+
privileged: true
81+
networks:
82+
- net
83+
ports:
84+
- "8083:8083"
85+
volumes:
86+
- "./fhem/:/opt/fhem/"
87+
- "/dev/ttyUSB0:/dev/ttyUSB0"
88+
environment:
89+
FHEM_UID: 6061
90+
FHEM_GID: 6061
91+
TIMEOUT: 10
92+
RESTART: 1
93+
TELNETPORT: 7072
94+
TZ: Europe/Berlin
95+
96+
# Example for privileged container w/
97+
# host network (not recommended for security reasons)
98+
fhem_5_e:
99+
image: ghcr.io/fhem/fhem-docker:5-bookworm
100+
restart: always
101+
privileged: true
102+
network_mode: "host"
103+
ports:
104+
- "8083:8083"
105+
volumes:
106+
- "./fhem/:/opt/fhem/"
107+
environment:
108+
FHEM_UID: 6061
109+
FHEM_GID: 6061
110+
TIMEOUT: 10
111+
RESTART: 1
112+
TELNETPORT: 7072
113+
TZ: Europe/Berlin
114+
115+
116+
# example with adding a cpan packages to your image
117+
fhem_5_f:
118+
build:
119+
context: .
120+
dockerfile_inline: |
121+
FROM ghcr.io/fhem/fhem-docker:5-bookworm
122+
RUN <<EOF
123+
cpm install --show-build-log-on-failure --configure-timeout=360 --workers=$(nproc) --local-lib-contained /usr/src/app/3rdparty/ << YOUR PAACKAGE NAME >>
124+
EOF
125+
pull_policy: build
126+
restart: always
127+
networks:
128+
- net
129+
ports:
130+
- "8083:8083"
131+
volumes:
132+
- "./fhem/:/opt/fhem/"
133+
134+
# example with extending debian packages to your image
135+
fhem_5_g:
136+
build:
137+
context: .
138+
dockerfile_inline: |
139+
FROM ghcr.io/fhem/fhem-docker:5-bookworm
140+
RUN <<EOF
141+
LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get update
142+
LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get install -qqy --no-install-recommends <DEBIAN PACKAGENAME>
143+
LC_ALL=C apt-get autoremove -qqy && LC_ALL=C apt-get clean
144+
EOF
145+
pull_policy: build
146+
restart: always
147+
networks:
148+
- net
149+
ports:
150+
- "8083:8083"
151+
volumes:
152+
- "./fhem/:/opt/fhem/"
153+
154+
# example with extending npm packages to your image
155+
fhem_5_h:
156+
build:
157+
context: .
158+
dockerfile_inline: |
159+
FROM ghcr.io/fhem/fhem-docker:5-bookworm
160+
RUN <<EOF
161+
npm install -g --unsafe-perm --production <NPM PACKAGENAME>
162+
npm cache clean --force
163+
EOF
164+
pull_policy: build
165+
restart: always
166+
networks:
167+
- net
168+
ports:
169+
- "8083:8083"
170+
volumes:
171+
- "./fhem/:/opt/fhem/"
172+
173+
174+
# example with extending python packages to your image
175+
fhem_5_i:
176+
build:
177+
context: .
178+
dockerfile_inline: |
179+
FROM ghcr.io/fhem/fhem-docker:5-bookworm
180+
RUN <<EOF
181+
pip3 install --no-cache-dir <PIP PACKAGENAME>
182+
EOF
183+
pull_policy: build
184+
restart: always
185+
networks:
186+
- net
187+
ports:
188+
- "8083:8083"
189+
volumes:
190+
- "./fhem/:/opt/fhem/"
191+
192+
193+
194+
195+
####
196+
# HINT: use only ONE of the example "fhem:" service
197+
# definitions below !
198+
#
199+
200+
# Minimum example w/o any custom environment variables
201+
fhem_4_a:
26202
image: ghcr.io/fhem/fhem-docker:4-bullseye
27203
restart: always
28204
networks:
@@ -33,7 +209,7 @@ services:
33209
- "./fhem/:/opt/fhem/"
34210

35211
# Example w/ custom environment variables
36-
fhem_c1:
212+
fhem_4_b:
37213
image: ghcr.io/fhem/fhem-docker:4-bullseye
38214
restart: always
39215
networks:
@@ -53,7 +229,7 @@ services:
53229

54230
# Example to connect USB to the container w/o
55231
# privileged mode (preferred method)
56-
fhem_c2:
232+
fhem_4_c:
57233
image: ghcr.io/fhem/fhem-docker:4-bullseye
58234
restart: always
59235
networks:
@@ -74,7 +250,7 @@ services:
74250

75251
# Example to connect USB to the container w/
76252
# privileged mode (not recommended for security reasons)
77-
fhem_c3:
253+
fhem_4_d:
78254
image: ghcr.io/fhem/fhem-docker:4-bullseye
79255
restart: always
80256
privileged: true
@@ -95,7 +271,7 @@ services:
95271

96272
# Example for privileged container w/
97273
# host network (not recommended for security reasons)
98-
fhem_c4:
274+
fhem_4_e:
99275
image: ghcr.io/fhem/fhem-docker:4-bullseye
100276
restart: always
101277
privileged: true
@@ -114,7 +290,7 @@ services:
114290

115291

116292
# example with adding a cpan packages to your image
117-
fhem_c5:
293+
fhem_4_f:
118294
build:
119295
context: .
120296
dockerfile_inline: |
@@ -132,7 +308,7 @@ services:
132308
- "./fhem/:/opt/fhem/"
133309

134310
# example with extending debian packages to your image
135-
fhem_c6:
311+
fhem_4_g:
136312
build:
137313
context: .
138314
dockerfile_inline: |
@@ -152,7 +328,7 @@ services:
152328
- "./fhem/:/opt/fhem/"
153329

154330
# example with extending npm packages to your image
155-
fhem_c7:
331+
fhem_4_h:
156332
build:
157333
context: .
158334
dockerfile_inline: |
@@ -172,7 +348,7 @@ services:
172348

173349

174350
# example with extending python packages to your image
175-
fhem_c8:
351+
fhem_4_i:
176352
build:
177353
context: .
178354
dockerfile_inline: |

0 commit comments

Comments
 (0)