On 6/5/2018 18:43, Xiuli Pan wrote:
From: Pan Xiuli xiuli.pan@linux.intel.com
Modify Dockerfile to copy apt.conf from host and set host proxy to environment. Also modify some git url to http url in order to use the proxy.
Also add a docker-build.sh to help docker build
Signed-off-by: Pan Xiuli xiuli.pan@linux.intel.com
V2: Add selection to use git url when no proxy is used
Hi Dylan,
Could you try these patches to see if the selection with git url work fine without git?
Thanks Xiuli
scripts/README.docker | 3 ++- scripts/docker_build/Dockerfile | 23 ++++++++++++++++++----- scripts/docker_build/docker-build.sh | 7 +++++++ 3 files changed, 27 insertions(+), 6 deletions(-) create mode 100755 scripts/docker_build/docker-build.sh
diff --git a/scripts/README.docker b/scripts/README.docker index 82558b1..e2f189f 100644 --- a/scripts/README.docker +++ b/scripts/README.docker @@ -16,7 +16,8 @@ First, build the docker container. This step needs to be done initially and when the toolchain or alsa dependencies are updated.
cd scripts/docker_build -docker build --build-arg UID=$(id -u) -t sof .
+./docker-build.sh
After the container is built, it can be used to run the scripts.
diff --git a/scripts/docker_build/Dockerfile b/scripts/docker_build/Dockerfile index 7ee0a45..8dede3c 100644 --- a/scripts/docker_build/Dockerfile +++ b/scripts/docker_build/Dockerfile @@ -17,6 +17,13 @@ FROM ubuntu:16.04 ARG UID=1000
+# Set up proxy from host +COPY apt.conf /etc/apt/ +ARG host_http_proxy +ARG host_https_proxy +ENV http_proxy $host_http_proxy +ENV https_proxy $host_https_proxy
- RUN apt-get -y update && \ apt-get install -y \ autoconf \
@@ -49,11 +56,17 @@ RUN apt-get clean RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 70 --slave /usr/bin/g++ g++ /usr/bin/g++-7
# Use ToT alsa utils for the latest topology patches. -RUN mkdir -p /root/alsa-build -RUN cd /root/alsa-build && git clone git://git.alsa-project.org/alsa-lib.git -RUN cd /root/alsa-build && git clone git://git.alsa-project.org/alsa-utils.git -RUN cd /root/alsa-build/alsa-lib && ./gitcompile && make install -RUN cd /root/alsa-build/alsa-utils && ./gitcompile && make install +RUN mkdir -p /root/alsa-build && cd /root/alsa-build && \
- if [ "x$http_proxy" = "x" ]; then \
git clone git://git.alsa-project.org/alsa-lib.git && \
git clone git://git.alsa-project.org/alsa-utils.git ; \
- else \
git clone http://git.alsa-project.org/http/alsa-lib.git && \
git clone http://git.alsa-project.org/http/alsa-utils.git; \
- fi && \
+cd /root/alsa-build/alsa-lib && ./gitcompile && make install && \ +cd /root/alsa-build/alsa-utils && ./gitcompile && make install && \ +cd /root/ && rm -rf alsa-build
RUN useradd --create-home -d /home/sof -u $UID -G sudo sof RUN echo "sof:test0000" | chpasswd diff --git a/scripts/docker_build/docker-build.sh b/scripts/docker_build/docker-build.sh new file mode 100755 index 0000000..1090f15 --- /dev/null +++ b/scripts/docker_build/docker-build.sh @@ -0,0 +1,7 @@ +#!/bin/bash +if [ -f "/etc/apt/apt.conf" ]; then
- cp /etc/apt/apt.conf ./
+else
- touch apt.conf
+fi +docker build --build-arg UID=$(id -u) --build-arg host_http_proxy=$http_proxy --build-arg host_https_proxy=$https_proxy -t sof .