Skip to content

Commit

Permalink
Add support for ARM64v8 architecture
Browse files Browse the repository at this point in the history
 - Update manifest to fetch latest architecture based gazebo
   from available distributions.
 - Add Debian based Gazebo to support both AMD64 & ARM64.

Signed-off-by: Odidev <[email protected]>
  • Loading branch information
odidev committed Aug 23, 2018
1 parent a136b53 commit c2e3657
Show file tree
Hide file tree
Showing 9 changed files with 217 additions and 0 deletions.
28 changes: 28 additions & 0 deletions gazebo/9/debian/stretch/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
all: help

help:
@echo ""
@echo "-- Help Menu"
@echo ""
@echo " 1. make build - build all images"
@echo " 2. make pull - pull all images"
@echo " 3. make clean - remove all images"
@echo ""

build:
@docker build --tag=gazebo:gzserver9 gzserver9/.
@docker build --tag=gazebo:libgazebo9 libgazebo9/.
# @docker build --tag=gazebo:gzclient9 gzclient9/.
# @docker build --tag=gazebo:gzweb9 gzweb9/.

pull:
@docker pull gazebo:libgazebo9
@docker pull gazebo:gzserver9
# @docker pull gazebo:gzclient9
# @docker pull gazebo:gzweb9

clean:
@docker rmi -f gazebo:libgazebo9
@docker rmi -f gazebo:gzserver9
# @docker rmi -f gazebo:gzclient9
# @docker rmi -f gazebo:gzweb9
16 changes: 16 additions & 0 deletions gazebo/9/debian/stretch/gzclient9/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# This is an auto generated Dockerfile for gazebo:gzclient9
# generated from docker_images/create_gzclient_image.Dockerfile.em
FROM gazebo:gzserver9

# install packages
RUN apt-get update && apt-get install -q -y \
binutils \
mesa-utils \
module-init-tools \
x-window-system \
&& rm -rf /var/lib/apt/lists/*

# install gazebo packages
RUN apt-get update && apt-get install -q -y \
gazebo9=9.0.0-2* \
&& rm -rf /var/lib/apt/lists/*
31 changes: 31 additions & 0 deletions gazebo/9/debian/stretch/gzserver9/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# This is an auto generated Dockerfile for gazebo:gzserver9
# generated from docker_images/create_gzserver_image.Dockerfile.em
FROM debian:stretch

# install packages
RUN apt-get update && apt-get install -q -y \
dirmngr \
gnupg2 \
lsb-release \
&& rm -rf /var/lib/apt/lists/*

# setup keys
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys D2486D2DD83DB69272AFE98867170598AF249743

# setup sources.list
RUN . /etc/os-release \
&& echo "deb http://packages.osrfoundation.org/gazebo/$ID-stable `lsb_release -sc` main" > /etc/apt/sources.list.d/gazebo-latest.list

# install gazebo packages
RUN apt-get update && apt-get install -q -y \
gazebo9=9.0.0-2* \
&& rm -rf /var/lib/apt/lists/*

# setup environment
EXPOSE 11345

# setup entrypoint
COPY ./gzserver_entrypoint.sh /

ENTRYPOINT ["/gzserver_entrypoint.sh"]
CMD ["gzserver"]
6 changes: 6 additions & 0 deletions gazebo/9/debian/stretch/gzserver9/gzserver_entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#!/bin/bash
set -e

# setup gazebo environment
source "/usr/share/gazebo/setup.sh"
exec "$@"
42 changes: 42 additions & 0 deletions gazebo/9/debian/stretch/gzweb9/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# This is an auto generated Dockerfile for gazebo:gzweb9
# generated from docker_images/create_gzweb_image.Dockerfile.em
FROM gazebo:libgazebo9

# install packages
RUN apt-get update && apt-get install -q -y \
build-essential \
cmake \
imagemagick \
libboost-all-dev \
libgts-dev \
libjansson-dev \
libtinyxml-dev \
mercurial \
nodejs \
nodejs-legacy \
npm \
pkg-config \
psmisc \
xvfb \
&& rm -rf /var/lib/apt/lists/*

# install gazebo packages
RUN apt-get update && apt-get install -q -y \
libgazebo9-dev=9.0.0-2* \
&& rm -rf /var/lib/apt/lists/*

# clone gzweb
ENV GZWEB_WS /root/gzweb
RUN hg clone https://bitbucket.org/osrf/gzweb $GZWEB_WS
WORKDIR $GZWEB_WS

# build gzweb
RUN hg up default \
&& xvfb-run -s "-screen 0 1280x1024x24" ./deploy.sh -m -t

# setup environment
EXPOSE 8080
EXPOSE 7681

# run gzserver and gzweb
CMD gzserver --verbose & npm start
57 changes: 57 additions & 0 deletions gazebo/9/debian/stretch/images.yaml.em
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
%YAML 1.1
# Gazebo Dockerfile database
---
images:
gzserver@(gazebo_version):
base_image: @(os_name):@(os_code_name)
maintainer_name: @(maintainer_name)
template_name: docker_images/create_gzserver_image.Dockerfile.em
entrypoint_name: docker_images/gzserver_entrypoint.sh
template_packages:
- docker_templates
gazebo_packages:
- gazebo@(gazebo_version)
libgazebo@(gazebo_version):
base_image: @(user_name):gzserver@(gazebo_version)
maintainer_name: @(maintainer_name)
template_name: docker_images/create_gzclient_image.Dockerfile.em
template_packages:
- docker_templates
gazebo_packages:
- libgazebo@(gazebo_version)-dev
gzweb@(gazebo_version):
base_image: @(user_name):libgazebo@(gazebo_version)
maintainer_name: @(maintainer_name)
template_name: docker_images/create_gzweb_image.Dockerfile.em
template_packages:
- docker_templates
upstream_packages:
- build-essential
- cmake
- imagemagick
- libboost-all-dev
- libgts-dev
- libjansson-dev
- libtinyxml-dev
- mercurial
- nodejs
- nodejs-legacy
- npm
- pkg-config
- psmisc
- xvfb
gazebo_packages:
- libgazebo@(gazebo_version)-dev
gzclient@(gazebo_version):
base_image: @(user_name):gzserver@(gazebo_version)
maintainer_name: @(maintainer_name)
template_name: docker_images/create_gzclient_image.Dockerfile.em
template_packages:
- docker_templates
upstream_packages:
- binutils
- mesa-utils
- module-init-tools
- x-window-system
gazebo_packages:
- gazebo@(gazebo_version)
7 changes: 7 additions & 0 deletions gazebo/9/debian/stretch/libgazebo9/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# This is an auto generated Dockerfile for gazebo:libgazebo9
# generated from docker_images/create_gzclient_image.Dockerfile.em
FROM gazebo:gzserver9
# install gazebo packages
RUN apt-get update && apt-get install -q -y \
libgazebo9-dev=9.0.0-2* \
&& rm -rf /var/lib/apt/lists/*
13 changes: 13 additions & 0 deletions gazebo/9/debian/stretch/platform.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
%YAML 1.1
# Gazebo Dockerfile database
---
platform:
os_name: debian
os_code_name: stretch
gazebo_version: 9
user_name: gazebo
maintainer_name:
arch: amd64
type: distribution
version:
release: stable
17 changes: 17 additions & 0 deletions gazebo/manifest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,23 @@ release_names:
- "libgazebo9"
- "libgazebo9-$os_code_name"
- latest
debian:
os_code_names:
stretch:
<<: *DEFAULT
archs:
- amd64
- arm64v8
tag_names:
gzserver9:
aliases:
- "gzserver9"
- "gzserver9-$os_code_name"
libgazebo9:
aliases:
- "libgazebo9"
- "libgazebo9-$os_code_name"
- latest

meta:
maintainers:
Expand Down

0 comments on commit c2e3657

Please sign in to comment.