jerryscript-project / iotjs

Platform for Internet of Things with JavaScript http://www.iotjs.net

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What's the dockerfile for iotjs/ubuntu

lygstate opened this issue · comments

I create a Dockerfile for my own

FROM ubuntu
WORKDIR /root
RUN mkdir -p /run/systemd && echo 'docker' > /run/systemd/container
RUN apt-get update \
    && apt-get install -y wget curl \
    && rm -rf /var/lib/apt/lists/*

RUN sed -i 's/^#\s*\(deb.*universe\)$/\1/g' /etc/apt/sources.list \
    && echo "deb [trusted=yes] http://download.tizen.org/tools/latest-release/Ubuntu_20.04/ /" >> /etc/apt/sources.list \
    && echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections \
    && wget https://deb.nodesource.com/setup_12.x \
    && bash setup_12.x \
    && rm setup_12.x \
    && rm -rf /var/lib/apt/lists/*

RUN apt-get update \
    && apt-get install -y \
        sudo tzdata dialog apt-utils \
        git gyp cmake gcc build-essential valgrind clang \
        autoconf libtool pkg-config gperf flex bison autoconf2.13  \
        libncurses-dev libusb-1.0-0-dev libsgutils2-dev \
        minicom genromfs vim python nodejs \
        qemu-user-static \
    && rm -rf /var/lib/apt/lists/*

# HTTP TCP Server
RUN mkdir -p /root/work_space/node_server \
    && cd /root/work_space/node_server \
    && npm install express ws

# RPI2
RUN apt-get update \
    && apt-get install -y \
        gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf \
    && rm -rf /var/lib/apt/lists/*

# ASAN
RUN apt-get update \
    && apt-get install -y \
        gcc-i686-linux-gnu g++-i686-linux-gnu \
    && rm -rf /var/lib/apt/lists/*

# Tizen deps
RUN apt-get update \
    && apt-get install -y \
        gbs mic \
    && rm -rf /var/lib/apt/lists/*

# STM32 deps
RUN apt-get update \
    && apt-get install -y \
        gcc-arm-none-eabi libnewlib-arm-none-eabi binutils-arm-none-eabi libstdc++-arm-none-eabi-newlib \
    && rm -rf /var/lib/apt/lists/*
RUN curl https://gitlab.com/ymorin/kconfig-frontends/-/archive/4.11.x/kconfig-frontends-4.11.x.tar.gz | tar xz \
    && cd kconfig-frontends-4.11.x \
    && ls -la \
    && autoreconf -fi \
    && mkdir build \
    && cd build \
    && ../configure \
        --prefix=/usr \
        --disable-gconf --disable-qconf \
    && make install \
    && cd /root \
    && rm -rf kconfig-frontends-4.11.x

# MQTT Server, only 1.4.x works with the mqtt test
# Maybe it's the mqtt client bug
RUN echo Install mqtt server \
    && apt-get update \
    && apt-get install -y libev4 libwrap0 \
    && wget http://security.ubuntu.com/ubuntu/pool/universe/libw/libwebsockets/libwebsockets8_2.0.3-3build1_amd64.deb \
    && dpkg -i libwebsockets8_2.0.3-3build1_amd64.deb \
    && rm -f libwebsockets8_2.0.3-3build1_amd64.deb \
    && wget http://security.ubuntu.com/ubuntu/pool/universe/m/mosquitto/mosquitto_1.4.15-2ubuntu0.18.04.3_amd64.deb \
    && dpkg -i mosquitto_1.4.15-2ubuntu0.18.04.3_amd64.deb \
    && rm -f mosquitto_1.4.15-2ubuntu0.18.04.3_amd64.deb \
    && rm -rf /var/lib/apt/lists/*

# Tizen git repos
#git clone https://github.com/Samsung/TizenRT.git && \
RUN echo Prepare Tizen \
    && wget -q https://codeload.github.com/Samsung/TizenRT/tar.gz/e911b0b1c9587804542b3008223befb94e7a5ec3 -O TizenRT.tar.gz \
    && mkdir TizenRT \
    && tar -C TizenRT -xf TizenRT.tar.gz --strip-components=1 \
    && rm -f TizenRT.tar.gz

# STM32 git repos
RUN echo Prepare STM32 \
    && wget -q https://codeload.github.com/apache/incubator-nuttx/tar.gz/0eb9a05b9ea1a426330be21016b70a34a234f4ec -O nuttx.tar.gz \
    && mkdir nuttx \
    && tar -C nuttx -xf nuttx.tar.gz --strip-components=1 \
    && rm -f nuttx.tar.gz \
    && wget -q https://codeload.github.com/apache/incubator-nuttx-apps/tar.gz/9d4b9e8a6747d76acb53ca2ee93a95ec84f79001 -O apps.tar.gz \
    && mkdir apps \
    && tar -C apps -xf apps.tar.gz --strip-components=1 \
    && rm -f apps.tar.gz

Feel free to submit to tree