Skip to content

Commit

Permalink
chore: optimize docker build (OpenAtomFoundation#2620)
Browse files Browse the repository at this point in the history
  • Loading branch information
machinly authored Apr 22, 2024
1 parent a748dc8 commit 8896050
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 34 deletions.
13 changes: 13 additions & 0 deletions docker/Dockerfile_buidler
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
FROM ubuntu:22.04

RUN sed -i 's/http:\/\/archive.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list ; \
sed -i 's/http:\/\/ports.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list ; \
sed -i 's/http:\/\/security.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list

RUN apt-get update && apt-get install -y \
ca-certificates \
build-essential \
git \
cmake \
autoconf \
clang-tidy-12
36 changes: 4 additions & 32 deletions docker/Dockerfile_pika
Original file line number Diff line number Diff line change
@@ -1,50 +1,22 @@
FROM ubuntu:22.04 AS builder
FROM pikadb/pika_builder:ubuntu_22.04 as builder

LABEL maintainer="[email protected], zhangshaomin_1990@126.com"
LABEL maintainer="pikiwidb@gmail.com"

ENV PIKA=/pika \
PIKA_BUILD_DIR=/tmp/pika \
PATH=${PIKA}:${PIKA}/bin:${PATH} \
BUILD_TYPE=RelWithDebInfo

ARG ENABLE_PROXY=false

RUN if [ "$ENABLE_PROXY" = "true" ] ; \
then sed -i 's/http:\/\/archive.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list ; \
sed -i 's/http:\/\/ports.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list ; \
fi

RUN apt-get update && apt-get install -y \
ca-certificates \
build-essential \
git \
cmake \
autoconf \
clang-tidy-12

WORKDIR ${PIKA_BUILD_DIR}

COPY . ${PIKA_BUILD_DIR}

RUN cmake -B ${PIKA_BUILD_DIR}/build -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DUSE_PIKA_TOOLS=OFF
RUN cmake --build ${PIKA_BUILD_DIR}/build --config ${BUILD_TYPE}

FROM ubuntu:22.04

LABEL maintainer="[email protected], [email protected]"

ARG ENABLE_PROXY=false

RUN if [ "$ENABLE_PROXY" = "true" ] ; \
then sed -i 's/http:\/\/archive.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list ; \
sed -i 's/http:\/\/ports.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list ; \
fi
FROM pikadb/pika_runner:ubuntu_22.04

RUN apt-get update && apt-get install -y \
ca-certificates \
rsync && \
apt-get clean && \
rm -rf /var/lib/apt/lists /var/cache/apt/archives
LABEL maintainer="[email protected]"

ENV PIKA=/pika \
PIKA_BUILD_DIR=/tmp/pika \
Expand Down
11 changes: 11 additions & 0 deletions docker/Dockerfile_runner
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
FROM ubuntu:22.04

RUN sed -i 's/http:\/\/archive.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list ; \
sed -i 's/http:\/\/ports.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list ; \
sed -i 's/http:\/\/security.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list

RUN apt-get update && apt-get install -y \
ca-certificates \
rsync && \
apt-get clean && \
rm -rf /var/lib/apt/lists /var/cache/apt/archives
4 changes: 2 additions & 2 deletions docker/build_pika_docker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -91,11 +91,11 @@ then
docker buildx use pika-builder
fi

docker buildx build --platform ${PLATFORM} -t ${TAG} -f Dockerfile_pika --build-arg ENABLE_PROXY=${PROXY} ..
docker buildx build --platform ${PLATFORM} -t ${TAG} --push -f Dockerfile_pika ..

else
# build single-arch image
docker build -t ${TAG} -f Dockerfile_pika --build-arg ENABLE_PROXY=${PROXY} ..
docker build -t ${TAG} -f Dockerfile_pika ..
fi


0 comments on commit 8896050

Please sign in to comment.