Skip to content

Commit 6922fef

Browse files
authored
Add desktop image (#721)
1 parent afeab98 commit 6922fef

15 files changed

Lines changed: 458 additions & 61 deletions

.devcontainer/devcontainer.json

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,7 @@
11
{
22
"name": "Docker in Docker",
3-
"image": "mcr.microsoft.com/devcontainers/base:bullseye",
3+
"image": "mcr.microsoft.com/devcontainers/base:jammy",
44
"features": {
5-
"ghcr.io/devcontainers/features/common-utils:2": {
6-
"installZsh": "true",
7-
"upgradePackages": "false",
8-
"uid": "1000",
9-
"gid": "1000",
10-
"installOhMyZsh": "true",
11-
"nonFreePackages": "true"
12-
},
135
"ghcr.io/devcontainers/features/docker-from-docker:1": {
146
"version": "latest",
157
"enableNonRootDocker": "true",

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
__pycache__
2-
site/
2+
site/
3+
.venv/

docker-bake.hcl

Lines changed: 80 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,15 @@ target "ros2-rolling-dev" {
2323
]
2424
}
2525

26+
target "ros2-rolling-desktop" {
27+
context = "ros2"
28+
dockerfile = "rolling.Dockerfile"
29+
target = "desktop"
30+
tags = [
31+
"${REGISTRY}/ros2:rolling-desktop",
32+
]
33+
}
34+
2635
target "ros2-rolling-full" {
2736
context = "ros2"
2837
dockerfile = "rolling.Dockerfile"
@@ -43,7 +52,7 @@ target "ros2-rolling-gazebo" {
4352

4453
# ---- group for all ros2-rolling ----
4554
group "ros2-rolling" {
46-
targets = ["ros2-rolling-base", "ros2-rolling-dev", "ros2-rolling-full", "ros2-rolling-gazebo"]
55+
targets = ["ros2-rolling-base", "ros2-rolling-dev", "ros2-rolling-desktop", "ros2-rolling-full", "ros2-rolling-gazebo"]
4756
}
4857

4958
# ----------- targets for ros2-rolling-cuda -----------
@@ -66,6 +75,15 @@ target "ros2-rolling-cuda-dev" {
6675
]
6776
}
6877

78+
target "ros2-rolling-cuda-desktop" {
79+
context = "ros2"
80+
dockerfile = "rolling-cuda.Dockerfile"
81+
target = "desktop"
82+
tags = [
83+
"${REGISTRY}/ros2:rolling-cuda-desktop",
84+
]
85+
}
86+
6987
target "ros2-rolling-cuda-full" {
7088
context = "ros2"
7189
dockerfile = "rolling-cuda.Dockerfile"
@@ -86,7 +104,7 @@ target "ros2-rolling-cuda-gazebo" {
86104

87105
# ---- group for all ros2-rolling-cuda ----
88106
group "ros2-rolling-cuda" {
89-
targets = ["ros2-rolling-cuda-base", "ros2-rolling-cuda-dev", "ros2-rolling-cuda-full", "ros2-rolling-cuda-gazebo"]
107+
targets = ["ros2-rolling-cuda-base", "ros2-rolling-cuda-dev", "ros2-rolling-cuda-desktop", "ros2-rolling-cuda-full", "ros2-rolling-cuda-gazebo"]
90108
}
91109

92110
# ----------- targets for ros2-kilted -----------
@@ -109,6 +127,15 @@ target "ros2-kilted-dev" {
109127
]
110128
}
111129

130+
target "ros2-kilted-desktop" {
131+
context = "ros2"
132+
dockerfile = "kilted.Dockerfile"
133+
target = "desktop"
134+
tags = [
135+
"${REGISTRY}/ros2:kilted-desktop",
136+
]
137+
}
138+
112139
target "ros2-kilted-full" {
113140
context = "ros2"
114141
dockerfile = "kilted.Dockerfile"
@@ -129,7 +156,7 @@ target "ros2-kilted-gazebo" {
129156

130157
# ---- group for all ros2-kilted ----
131158
group "ros2-kilted" {
132-
targets = ["ros2-kilted-base", "ros2-kilted-dev", "ros2-kilted-full", "ros2-kilted-gazebo"]
159+
targets = ["ros2-kilted-base", "ros2-kilted-dev", "ros2-kilted-desktop", "ros2-kilted-full", "ros2-kilted-gazebo"]
133160
}
134161

135162
# ----------- targets for ros2-jazzy -----------
@@ -152,6 +179,15 @@ target "ros2-jazzy-dev" {
152179
]
153180
}
154181

182+
target "ros2-jazzy-desktop" {
183+
context = "ros2"
184+
dockerfile = "jazzy.Dockerfile"
185+
target = "desktop"
186+
tags = [
187+
"${REGISTRY}/ros2:jazzy-desktop",
188+
]
189+
}
190+
155191
target "ros2-jazzy-full" {
156192
context = "ros2"
157193
dockerfile = "jazzy.Dockerfile"
@@ -172,7 +208,7 @@ target "ros2-jazzy-gazebo" {
172208

173209
# ---- group for all ros2-jazzy ----
174210
group "ros2-jazzy" {
175-
targets = ["ros2-jazzy-base", "ros2-jazzy-dev", "ros2-jazzy-full", "ros2-jazzy-gazebo"]
211+
targets = ["ros2-jazzy-base", "ros2-jazzy-dev", "ros2-jazzy-desktop", "ros2-jazzy-full", "ros2-jazzy-gazebo"]
176212
}
177213

178214
# ----------- targets for ros2-jazzy-cuda -----------
@@ -195,6 +231,15 @@ target "ros2-jazzy-cuda-dev" {
195231
]
196232
}
197233

234+
target "ros2-jazzy-cuda-desktop" {
235+
context = "ros2"
236+
dockerfile = "jazzy-cuda.Dockerfile"
237+
target = "desktop"
238+
tags = [
239+
"${REGISTRY}/ros2:jazzy-cuda-desktop",
240+
]
241+
}
242+
198243
target "ros2-jazzy-cuda-full" {
199244
context = "ros2"
200245
dockerfile = "jazzy-cuda.Dockerfile"
@@ -215,7 +260,7 @@ target "ros2-jazzy-cuda-gazebo" {
215260

216261
# ---- group for all ros2-jazzy-cuda ----
217262
group "ros2-jazzy-cuda" {
218-
targets = ["ros2-jazzy-cuda-base", "ros2-jazzy-cuda-dev", "ros2-jazzy-cuda-full", "ros2-jazzy-cuda-gazebo"]
263+
targets = ["ros2-jazzy-cuda-base", "ros2-jazzy-cuda-dev", "ros2-jazzy-cuda-desktop", "ros2-jazzy-cuda-full", "ros2-jazzy-cuda-gazebo"]
219264
}
220265

221266
# ----------- targets for ros2-humble -----------
@@ -238,6 +283,15 @@ target "ros2-humble-dev" {
238283
]
239284
}
240285

286+
target "ros2-humble-desktop" {
287+
context = "ros2"
288+
dockerfile = "humble.Dockerfile"
289+
target = "desktop"
290+
tags = [
291+
"${REGISTRY}/ros2:humble-desktop",
292+
]
293+
}
294+
241295
target "ros2-humble-full" {
242296
context = "ros2"
243297
dockerfile = "humble.Dockerfile"
@@ -258,7 +312,7 @@ target "ros2-humble-gazebo" {
258312

259313
# ---- group for all ros2-humble ----
260314
group "ros2-humble" {
261-
targets = ["ros2-humble-base", "ros2-humble-dev", "ros2-humble-full", "ros2-humble-gazebo"]
315+
targets = ["ros2-humble-base", "ros2-humble-dev", "ros2-humble-desktop", "ros2-humble-full", "ros2-humble-gazebo"]
262316
}
263317

264318
# ----------- targets for ros2-humble-cuda -----------
@@ -281,6 +335,15 @@ target "ros2-humble-cuda-dev" {
281335
]
282336
}
283337

338+
target "ros2-humble-cuda-desktop" {
339+
context = "ros2"
340+
dockerfile = "humble-cuda.Dockerfile"
341+
target = "desktop"
342+
tags = [
343+
"${REGISTRY}/ros2:humble-cuda-desktop",
344+
]
345+
}
346+
284347
target "ros2-humble-cuda-full" {
285348
context = "ros2"
286349
dockerfile = "humble-cuda.Dockerfile"
@@ -301,7 +364,7 @@ target "ros2-humble-cuda-gazebo" {
301364

302365
# ---- group for all ros2-humble-cuda ----
303366
group "ros2-humble-cuda" {
304-
targets = ["ros2-humble-cuda-base", "ros2-humble-cuda-dev", "ros2-humble-cuda-full", "ros2-humble-cuda-gazebo"]
367+
targets = ["ros2-humble-cuda-base", "ros2-humble-cuda-dev", "ros2-humble-cuda-desktop", "ros2-humble-cuda-full", "ros2-humble-cuda-gazebo"]
305368
}
306369

307370
# ----------- targets for ignition-fortress -----------
@@ -482,29 +545,29 @@ group "gz-harmonic-cuda" {
482545

483546
# ---------- Parent-platform groups per entry (os/arch; variant-agnostic) ---------- #
484547

485-
group "ros2-rolling-linux-amd64" { targets = [ "ros2-rolling-base", "ros2-rolling-dev", "ros2-rolling-full", "ros2-rolling-gazebo" ] }
548+
group "ros2-rolling-linux-amd64" { targets = [ "ros2-rolling-base", "ros2-rolling-dev", "ros2-rolling-desktop", "ros2-rolling-full", "ros2-rolling-gazebo" ] }
486549
group "ros2-rolling-linux-arm64" { targets = [ "ros2-rolling-base" ] }
487550

488551

489-
group "ros2-rolling-cuda-linux-amd64" { targets = [ "ros2-rolling-cuda-base", "ros2-rolling-cuda-dev", "ros2-rolling-cuda-full", "ros2-rolling-cuda-gazebo" ] }
552+
group "ros2-rolling-cuda-linux-amd64" { targets = [ "ros2-rolling-cuda-base", "ros2-rolling-cuda-dev", "ros2-rolling-cuda-desktop", "ros2-rolling-cuda-full", "ros2-rolling-cuda-gazebo" ] }
490553

491554

492-
group "ros2-kilted-linux-amd64" { targets = [ "ros2-kilted-base", "ros2-kilted-dev", "ros2-kilted-full", "ros2-kilted-gazebo" ] }
555+
group "ros2-kilted-linux-amd64" { targets = [ "ros2-kilted-base", "ros2-kilted-dev", "ros2-kilted-desktop", "ros2-kilted-full", "ros2-kilted-gazebo" ] }
493556
group "ros2-kilted-linux-arm64" { targets = [ "ros2-kilted-base" ] }
494557

495558

496-
group "ros2-jazzy-linux-amd64" { targets = [ "ros2-jazzy-base", "ros2-jazzy-dev", "ros2-jazzy-full", "ros2-jazzy-gazebo" ] }
559+
group "ros2-jazzy-linux-amd64" { targets = [ "ros2-jazzy-base", "ros2-jazzy-dev", "ros2-jazzy-desktop", "ros2-jazzy-full", "ros2-jazzy-gazebo" ] }
497560
group "ros2-jazzy-linux-arm64" { targets = [ "ros2-jazzy-base" ] }
498561

499562

500-
group "ros2-jazzy-cuda-linux-amd64" { targets = [ "ros2-jazzy-cuda-base", "ros2-jazzy-cuda-dev", "ros2-jazzy-cuda-full", "ros2-jazzy-cuda-gazebo" ] }
563+
group "ros2-jazzy-cuda-linux-amd64" { targets = [ "ros2-jazzy-cuda-base", "ros2-jazzy-cuda-dev", "ros2-jazzy-cuda-desktop", "ros2-jazzy-cuda-full", "ros2-jazzy-cuda-gazebo" ] }
501564

502565

503-
group "ros2-humble-linux-amd64" { targets = [ "ros2-humble-base", "ros2-humble-dev", "ros2-humble-full", "ros2-humble-gazebo" ] }
504-
group "ros2-humble-linux-arm64" { targets = [ "ros2-humble-base", "ros2-humble-dev", "ros2-humble-full" ] }
566+
group "ros2-humble-linux-amd64" { targets = [ "ros2-humble-base", "ros2-humble-dev", "ros2-humble-desktop", "ros2-humble-full", "ros2-humble-gazebo" ] }
567+
group "ros2-humble-linux-arm64" { targets = [ "ros2-humble-base", "ros2-humble-dev", "ros2-humble-desktop", "ros2-humble-full" ] }
505568

506569

507-
group "ros2-humble-cuda-linux-amd64" { targets = [ "ros2-humble-cuda-base", "ros2-humble-cuda-dev", "ros2-humble-cuda-full", "ros2-humble-cuda-gazebo" ] }
570+
group "ros2-humble-cuda-linux-amd64" { targets = [ "ros2-humble-cuda-base", "ros2-humble-cuda-dev", "ros2-humble-cuda-desktop", "ros2-humble-cuda-full", "ros2-humble-cuda-gazebo" ] }
508571

509572

510573
group "ignition-fortress-linux-amd64" { targets = [ "ignition-fortress-base", "ignition-fortress-dev" ] }
@@ -531,14 +594,14 @@ group "gz-harmonic-cuda-linux-amd64" { targets = [ "gz-harmonic-cuda-base", "gz-
531594
# ---------- Family-level groups (e.g., ros2, gz, ignition) ----------
532595

533596
group "ros" { targets = [ ] }
534-
group "ros2" { targets = [ "ros2-rolling-base", "ros2-rolling-dev", "ros2-rolling-full", "ros2-rolling-gazebo", "ros2-rolling-cuda-base", "ros2-rolling-cuda-dev", "ros2-rolling-cuda-full", "ros2-rolling-cuda-gazebo", "ros2-kilted-base", "ros2-kilted-dev", "ros2-kilted-full", "ros2-kilted-gazebo", "ros2-jazzy-base", "ros2-jazzy-dev", "ros2-jazzy-full", "ros2-jazzy-gazebo", "ros2-jazzy-cuda-base", "ros2-jazzy-cuda-dev", "ros2-jazzy-cuda-full", "ros2-jazzy-cuda-gazebo", "ros2-humble-base", "ros2-humble-dev", "ros2-humble-full", "ros2-humble-gazebo", "ros2-humble-cuda-base", "ros2-humble-cuda-dev", "ros2-humble-cuda-full", "ros2-humble-cuda-gazebo" ] }
597+
group "ros2" { targets = [ "ros2-rolling-base", "ros2-rolling-dev", "ros2-rolling-desktop", "ros2-rolling-full", "ros2-rolling-gazebo", "ros2-rolling-cuda-base", "ros2-rolling-cuda-dev", "ros2-rolling-cuda-desktop", "ros2-rolling-cuda-full", "ros2-rolling-cuda-gazebo", "ros2-kilted-base", "ros2-kilted-dev", "ros2-kilted-desktop", "ros2-kilted-full", "ros2-kilted-gazebo", "ros2-jazzy-base", "ros2-jazzy-dev", "ros2-jazzy-desktop", "ros2-jazzy-full", "ros2-jazzy-gazebo", "ros2-jazzy-cuda-base", "ros2-jazzy-cuda-dev", "ros2-jazzy-cuda-desktop", "ros2-jazzy-cuda-full", "ros2-jazzy-cuda-gazebo", "ros2-humble-base", "ros2-humble-dev", "ros2-humble-desktop", "ros2-humble-full", "ros2-humble-gazebo", "ros2-humble-cuda-base", "ros2-humble-cuda-dev", "ros2-humble-cuda-desktop", "ros2-humble-cuda-full", "ros2-humble-cuda-gazebo" ] }
535598
group "gazebo" { targets = [ ] }
536599
group "ignition" { targets = [ "ignition-fortress-base", "ignition-fortress-dev" ] }
537600
group "gz" { targets = [ "gz-jetty-base", "gz-jetty-dev", "gz-jetty-cuda-base", "gz-jetty-cuda-dev", "gz-ionic-base", "gz-ionic-dev", "gz-ionic-cuda-base", "gz-ionic-cuda-dev", "gz-harmonic-base", "gz-harmonic-dev", "gz-harmonic-cuda-base", "gz-harmonic-cuda-dev" ] }
538601

539602
# ---- all non-EOL ----
540603
group "default" {
541604
targets = [
542-
"ros2-rolling-base", "ros2-rolling-dev", "ros2-rolling-full", "ros2-rolling-gazebo", "ros2-rolling-cuda-base", "ros2-rolling-cuda-dev", "ros2-rolling-cuda-full", "ros2-rolling-cuda-gazebo", "ros2-kilted-base", "ros2-kilted-dev", "ros2-kilted-full", "ros2-kilted-gazebo", "ros2-jazzy-base", "ros2-jazzy-dev", "ros2-jazzy-full", "ros2-jazzy-gazebo", "ros2-jazzy-cuda-base", "ros2-jazzy-cuda-dev", "ros2-jazzy-cuda-full", "ros2-jazzy-cuda-gazebo", "ros2-humble-base", "ros2-humble-dev", "ros2-humble-full", "ros2-humble-gazebo", "ros2-humble-cuda-base", "ros2-humble-cuda-dev", "ros2-humble-cuda-full", "ros2-humble-cuda-gazebo", "ignition-fortress-base", "ignition-fortress-dev", "gz-jetty-base", "gz-jetty-dev", "gz-jetty-cuda-base", "gz-jetty-cuda-dev", "gz-ionic-base", "gz-ionic-dev", "gz-ionic-cuda-base", "gz-ionic-cuda-dev", "gz-harmonic-base", "gz-harmonic-dev", "gz-harmonic-cuda-base", "gz-harmonic-cuda-dev"
605+
"ros2-rolling-base", "ros2-rolling-dev", "ros2-rolling-desktop", "ros2-rolling-full", "ros2-rolling-gazebo", "ros2-rolling-cuda-base", "ros2-rolling-cuda-dev", "ros2-rolling-cuda-desktop", "ros2-rolling-cuda-full", "ros2-rolling-cuda-gazebo", "ros2-kilted-base", "ros2-kilted-dev", "ros2-kilted-desktop", "ros2-kilted-full", "ros2-kilted-gazebo", "ros2-jazzy-base", "ros2-jazzy-dev", "ros2-jazzy-desktop", "ros2-jazzy-full", "ros2-jazzy-gazebo", "ros2-jazzy-cuda-base", "ros2-jazzy-cuda-dev", "ros2-jazzy-cuda-desktop", "ros2-jazzy-cuda-full", "ros2-jazzy-cuda-gazebo", "ros2-humble-base", "ros2-humble-dev", "ros2-humble-desktop", "ros2-humble-full", "ros2-humble-gazebo", "ros2-humble-cuda-base", "ros2-humble-cuda-dev", "ros2-humble-cuda-desktop", "ros2-humble-cuda-full", "ros2-humble-cuda-gazebo", "ignition-fortress-base", "ignition-fortress-dev", "gz-jetty-base", "gz-jetty-dev", "gz-jetty-cuda-base", "gz-jetty-cuda-dev", "gz-ionic-base", "gz-ionic-dev", "gz-ionic-cuda-base", "gz-ionic-cuda-dev", "gz-harmonic-base", "gz-harmonic-dev", "gz-harmonic-cuda-base", "gz-harmonic-cuda-dev"
543606
]
544607
}

ros/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,27 +18,31 @@ noetic (eol)
1818

1919
* [noetic-base](https://github.com/athackst/dockerfiles/blob/main/ros/noetic.Dockerfile)
2020
* [noetic-dev](https://github.com/athackst/dockerfiles/blob/main/ros/noetic.Dockerfile)
21+
* [noetic-desktop](https://github.com/athackst/dockerfiles/blob/main/ros/noetic.Dockerfile)
2122
* [noetic-full](https://github.com/athackst/dockerfiles/blob/main/ros/noetic.Dockerfile)
2223
* [noetic-gazebo](https://github.com/athackst/dockerfiles/blob/main/ros/noetic.Dockerfile)
2324

2425
melodic (eol)
2526

2627
* [melodic-base](https://github.com/athackst/dockerfiles/blob/main/ros/melodic.Dockerfile)
2728
* [melodic-dev](https://github.com/athackst/dockerfiles/blob/main/ros/melodic.Dockerfile)
29+
* [melodic-desktop](https://github.com/athackst/dockerfiles/blob/main/ros/melodic.Dockerfile)
2830
* [melodic-full](https://github.com/athackst/dockerfiles/blob/main/ros/melodic.Dockerfile)
2931
* [melodic-gazebo](https://github.com/athackst/dockerfiles/blob/main/ros/melodic.Dockerfile)
3032

3133
lunar (eol)
3234

3335
* [lunar-base](https://github.com/athackst/dockerfiles/blob/main/ros/lunar.Dockerfile)
3436
* [lunar-dev](https://github.com/athackst/dockerfiles/blob/main/ros/lunar.Dockerfile)
37+
* [lunar-desktop](https://github.com/athackst/dockerfiles/blob/main/ros/lunar.Dockerfile)
3538
* [lunar-full](https://github.com/athackst/dockerfiles/blob/main/ros/lunar.Dockerfile)
3639
* [lunar-gazebo](https://github.com/athackst/dockerfiles/blob/main/ros/lunar.Dockerfile)
3740

3841
kinetic (eol)
3942

4043
* [kinetic-base](https://github.com/athackst/dockerfiles/blob/main/ros/kinetic.Dockerfile)
4144
* [kinetic-dev](https://github.com/athackst/dockerfiles/blob/main/ros/kinetic.Dockerfile)
45+
* [kinetic-desktop](https://github.com/athackst/dockerfiles/blob/main/ros/kinetic.Dockerfile)
4246
* [kinetic-full](https://github.com/athackst/dockerfiles/blob/main/ros/kinetic.Dockerfile)
4347
* [kinetic-gazebo](https://github.com/athackst/dockerfiles/blob/main/ros/kinetic.Dockerfile)
4448

0 commit comments

Comments
 (0)