mirror of
https://github.com/rancher/os.git
synced 2025-06-21 12:37:04 +00:00
Optimize scripts for slow disks
This commit is contained in:
parent
e1d29fbab7
commit
57a2f99484
@ -1,34 +1,6 @@
|
|||||||
FROM ubuntu:16.04
|
FROM ubuntu:16.04
|
||||||
# FROM arm64=aarch64/ubuntu:16.04 arm=armhf/ubuntu:16.04
|
# FROM arm64=aarch64/ubuntu:16.04 arm=armhf/ubuntu:16.04
|
||||||
|
|
||||||
RUN apt-get update && \
|
|
||||||
apt-get install -y \
|
|
||||||
build-essential \
|
|
||||||
ca-certificates \
|
|
||||||
cpio \
|
|
||||||
curl \
|
|
||||||
dosfstools \
|
|
||||||
gccgo \
|
|
||||||
genisoimage \
|
|
||||||
git \
|
|
||||||
isolinux \
|
|
||||||
less \
|
|
||||||
libblkid-dev \
|
|
||||||
libmount-dev \
|
|
||||||
libselinux1-dev \
|
|
||||||
locales \
|
|
||||||
module-init-tools \
|
|
||||||
pkg-config \
|
|
||||||
python-pip \
|
|
||||||
qemu \
|
|
||||||
qemu-kvm \
|
|
||||||
rsync \
|
|
||||||
sudo \
|
|
||||||
tox \
|
|
||||||
vim \
|
|
||||||
wget \
|
|
||||||
xorriso
|
|
||||||
|
|
||||||
ENV DAPPER_ENV VERSION DEV_BUILD
|
ENV DAPPER_ENV VERSION DEV_BUILD
|
||||||
ENV DAPPER_DOCKER_SOCKET true
|
ENV DAPPER_DOCKER_SOCKET true
|
||||||
ENV DAPPER_SOURCE /go/src/github.com/rancher/os
|
ENV DAPPER_SOURCE /go/src/github.com/rancher/os
|
||||||
@ -96,6 +68,8 @@ ENV DOCKER_URL_arm ${DOCKER_URL_arm}
|
|||||||
ENV DOCKER_URL_arm64 ${DOCKER_URL_arm64}
|
ENV DOCKER_URL_arm64 ${DOCKER_URL_arm64}
|
||||||
ENV DOCKER_VERSION ${DOCKER_VERSION}
|
ENV DOCKER_VERSION ${DOCKER_VERSION}
|
||||||
ENV DOWNLOADS /usr/src/downloads
|
ENV DOWNLOADS /usr/src/downloads
|
||||||
|
ENV GOPATH /go
|
||||||
|
ENV GO_VERSION 1.6.2
|
||||||
ENV GOARCH $ARCH
|
ENV GOARCH $ARCH
|
||||||
ENV HOSTNAME_DEFAULT ${HOSTNAME_DEFAULT}
|
ENV HOSTNAME_DEFAULT ${HOSTNAME_DEFAULT}
|
||||||
ENV HOST_ARCH ${HOST_ARCH}
|
ENV HOST_ARCH ${HOST_ARCH}
|
||||||
@ -111,6 +85,7 @@ ENV OS_BASE_URL_arm64 ${OS_BASE_URL_arm64}
|
|||||||
ENV OS_RELEASES_YML ${OS_RELEASES_YML}
|
ENV OS_RELEASES_YML ${OS_RELEASES_YML}
|
||||||
ENV OS_REPO ${OS_REPO}
|
ENV OS_REPO ${OS_REPO}
|
||||||
ENV OS_SERVICES_REPO ${OS_SERVICES_REPO}
|
ENV OS_SERVICES_REPO ${OS_SERVICES_REPO}
|
||||||
|
ENV PATH ${GOPATH}/bin:/usr/local/go/bin:$PATH
|
||||||
ENV REPO_VERSION master
|
ENV REPO_VERSION master
|
||||||
ENV SELINUX_POLICY_URL ${SELINUX_POLICY_URL}
|
ENV SELINUX_POLICY_URL ${SELINUX_POLICY_URL}
|
||||||
ENV TOOLCHAIN_arm ${TOOLCHAIN_arm}
|
ENV TOOLCHAIN_arm ${TOOLCHAIN_arm}
|
||||||
@ -121,6 +96,35 @@ ENV VBOX_MODULES_URL_amd64 ${VBOX_MODULES_URL_amd64}
|
|||||||
|
|
||||||
RUN mkdir -p ${DOWNLOADS}
|
RUN mkdir -p ${DOWNLOADS}
|
||||||
|
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
ca-certificates \
|
||||||
|
cpio \
|
||||||
|
curl \
|
||||||
|
dosfstools \
|
||||||
|
gccgo \
|
||||||
|
genisoimage \
|
||||||
|
git \
|
||||||
|
isolinux \
|
||||||
|
less \
|
||||||
|
libblkid-dev \
|
||||||
|
libmount-dev \
|
||||||
|
libselinux1-dev \
|
||||||
|
locales \
|
||||||
|
module-init-tools \
|
||||||
|
pkg-config \
|
||||||
|
python-pip \
|
||||||
|
qemu \
|
||||||
|
qemu-kvm \
|
||||||
|
rsync \
|
||||||
|
sudo \
|
||||||
|
tox \
|
||||||
|
vim \
|
||||||
|
wget \
|
||||||
|
xorriso
|
||||||
|
|
||||||
|
|
||||||
# Download kernel
|
# Download kernel
|
||||||
RUN rm /bin/sh && ln -s /bin/bash /bin/sh
|
RUN rm /bin/sh && ln -s /bin/bash /bin/sh
|
||||||
RUN if [ -n "${!KERNEL_URL}" ]; then \
|
RUN if [ -n "${!KERNEL_URL}" ]; then \
|
||||||
@ -137,15 +141,12 @@ RUN if [ -n "${!VBOX_MODULES_URL}" ]; then \
|
|||||||
|
|
||||||
# Install Go
|
# Install Go
|
||||||
COPY assets/go-dnsclient.patch ${DAPPER_SOURCE}
|
COPY assets/go-dnsclient.patch ${DAPPER_SOURCE}
|
||||||
ENV GO_VERSION 1.6.2
|
|
||||||
RUN ln -sf go-6 /usr/bin/go && \
|
RUN ln -sf go-6 /usr/bin/go && \
|
||||||
curl -sfL https://storage.googleapis.com/golang/go${GO_VERSION}.src.tar.gz | tar -xzf - -C /usr/local && \
|
curl -sfL https://storage.googleapis.com/golang/go${GO_VERSION}.src.tar.gz | tar -xzf - -C /usr/local && \
|
||||||
patch /usr/local/go/src/net/dnsclient_unix.go ${DAPPER_SOURCE}/go-dnsclient.patch && \
|
patch /usr/local/go/src/net/dnsclient_unix.go ${DAPPER_SOURCE}/go-dnsclient.patch && \
|
||||||
cd /usr/local/go/src && \
|
cd /usr/local/go/src && \
|
||||||
GOROOT_BOOTSTRAP=/usr GOARCH=${HOST_ARCH} GOHOSTARCH=${HOST_ARCH} ./make.bash && \
|
GOROOT_BOOTSTRAP=/usr GOARCH=${HOST_ARCH} GOHOSTARCH=${HOST_ARCH} ./make.bash && \
|
||||||
rm /usr/bin/go
|
rm /usr/bin/go
|
||||||
ENV GOPATH /go
|
|
||||||
ENV PATH ${GOPATH}/bin:/usr/local/go/bin:$PATH
|
|
||||||
|
|
||||||
# Install Host Docker
|
# Install Host Docker
|
||||||
RUN curl -fL ${!BUILD_DOCKER_URL} > /usr/bin/docker && \
|
RUN curl -fL ${!BUILD_DOCKER_URL} > /usr/bin/docker && \
|
||||||
|
@ -28,9 +28,9 @@ if [ -e ${DOWNLOADS}/kernel.tar.gz ]; then
|
|||||||
mkdir -p ${BUILD}/kernel
|
mkdir -p ${BUILD}/kernel
|
||||||
tar xf ${DOWNLOADS}/kernel.tar.gz -C ${BUILD}/kernel
|
tar xf ${DOWNLOADS}/kernel.tar.gz -C ${BUILD}/kernel
|
||||||
|
|
||||||
if [ -e ${BUILD}/kernel/boot/vmlinuz-* ]; then
|
if [ -e ${BUILD}/kernel/boot/vmlinu* ]; then
|
||||||
mkdir -p dist/artifacts
|
mkdir -p dist/artifacts
|
||||||
cp ${BUILD}/kernel/boot/vmlinuz-* dist/artifacts/vmlinuz
|
cp ${BUILD}/kernel/boot/vmlinu* dist/artifacts/vmlinuz
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -d ${BUILD}/kernel/lib ]; then
|
if [ -d ${BUILD}/kernel/lib ]; then
|
||||||
|
Loading…
Reference in New Issue
Block a user