docker-playground/open5gs-master/Dockerfile

70 lines
1.7 KiB
Docker

ARG REGISTRY=docker.io
FROM ${REGISTRY}/debian:buster
MAINTAINER Harald Welte <laforge@gnumonks.org>
RUN apt-get update && \
apt-get upgrade -y && \
apt-get install -y --no-install-recommends \
python3-pip \
python3-setuptools \
python3-wheel \
ninja-build \
build-essential \
flex \
bison \
git \
libsctp-dev \
libgnutls28-dev \
libgcrypt-dev \
libssl-dev \
libidn11-dev \
libmongoc-dev \
libbson-dev \
libyaml-dev \
iproute2 \
ca-certificates \
netbase \
pkg-config && \
apt-get clean
RUN python3 -m pip install --upgrade pip
RUN python3 -m pip install meson
RUN apt-get update && \
apt-get upgrade -y && \
DEBIAN_FRONTEND=noninteractive \
apt-get install -y --no-install-recommends \
git-buildpackage \
debhelper \
devscripts \
vim \
sudo \
iputils-ping \
net-tools && \
apt-get clean
COPY setup.sh /root
COPY pgw.sh /root
# crate user
ARG username=osmocom
RUN useradd -m --uid=1000 ${username} && \
echo "${username} ALL=(root) NOPASSWD:ALL" > /etc/sudoers.d/${username} && \
chmod 0440 /etc/sudoers.d/${username}
WORKDIR /home/${username}
# build + install open5gs
ARG GITHUB_USER=open5gs
ARG GITHUB_REPO=open5gs
ARG OPEN5GS_BRANCH=master
RUN git clone https://github.com/$GITHUB_USER/$GITHUB_REPO
ADD https://api.github.com/repos/$GITHUB_USER/$GITHUB_REPO/git/refs/heads/$OPEN5GS_BRANCH /root/open5gs-ver.json
RUN cd $GITHUB_REPO && \
git fetch && git checkout -f -B $OPEN5GS_BRANCH origin/$OPEN5GS_BRANCH && \
meson build && ninja -C build install