we never use uncompressed initrd, so always compress

Signed-off-by: Justin Cormack <justin@specialbusservice.com>
This commit is contained in:
Justin Cormack 2016-09-11 15:06:05 +01:00 committed by Justin Cormack
parent 5c79c1caf8
commit 7d08c3f9c1
8 changed files with 17 additions and 21 deletions

View File

@ -1,8 +1,8 @@
FROM mobylinux/alpine-qemu:1f3de121e9dea39a198413344a72049839bea91b
COPY alpine/initrd.img.gz .
COPY alpine/initrd.img .
COPY alpine/kernel/x86_64/vmlinuz64 .
RUN qemu-img create -f raw disk.img 100M
ENTRYPOINT [ "qemu-system-x86_64", "-drive", "file=disk.img,format=raw", "-device", "virtio-rng-pci", "-serial", "stdio", "-kernel", "vmlinuz64", "-initrd", "initrd.img.gz", "-m", "2048", "-append", "earlyprintk=serial console=ttyS0 noapic", "-vnc", "none" ]
ENTRYPOINT [ "qemu-system-x86_64", "-drive", "file=disk.img,format=raw", "-device", "virtio-rng-pci", "-serial", "stdio", "-kernel", "vmlinuz64", "-initrd", "initrd.img", "-m", "2048", "-append", "earlyprintk=serial console=ttyS0 noapic", "-vnc", "none" ]

View File

@ -1,8 +1,8 @@
FROM mobylinux/alpine-qemu:1f3de121e9dea39a198413344a72049839bea91b
COPY alpine/initrd.img.gz .
COPY alpine/initrd.img .
COPY alpine/kernel/x86_64/vmlinuz64 .
RUN qemu-img create -f raw disk.img 100M
ENTRYPOINT [ "qemu-system-x86_64", "-drive", "file=disk.img,format=raw", "-device", "virtio-rng-pci", "-serial", "stdio", "-kernel", "vmlinuz64", "-initrd", "initrd.img.gz", "-m", "1024", "-append", "earlyprintk=serial console=ttyS0 noapic mobyplatform=test", "-vnc", "none" ]
ENTRYPOINT [ "qemu-system-x86_64", "-drive", "file=disk.img,format=raw", "-device", "virtio-rng-pci", "-serial", "stdio", "-kernel", "vmlinuz64", "-initrd", "initrd.img", "-m", "1024", "-append", "earlyprintk=serial console=ttyS0 noapic mobyplatform=test", "-vnc", "none" ]

View File

@ -1,8 +1,8 @@
all:
$(MAKE) -C alpine
alpine/initrd.img.gz:
$(MAKE) -C alpine initrd.img.gz
alpine/initrd.img:
$(MAKE) -C alpine initrd.img
alpine/kernel/x86_64/vmlinuz64:
$(MAKE) -C alpine/kernel x86_64/vmlinuz64
@ -10,7 +10,7 @@ alpine/kernel/x86_64/vmlinuz64:
alpine/mobylinux-bios.iso:
$(MAKE) -C alpine mobylinux-bios.iso
qemu: Dockerfile.qemu alpine/initrd.img.gz alpine/kernel/x86_64/vmlinuz64
qemu: Dockerfile.qemu alpine/initrd.img alpine/kernel/x86_64/vmlinuz64
tar cf - $^ | docker build -f Dockerfile.qemu -t mobyqemu:build -
docker run -it --rm mobyqemu:build
@ -18,7 +18,7 @@ qemu-iso: Dockerfile.qemuiso alpine/mobylinux-bios.iso
tar cf - $^ | docker build -f Dockerfile.qemuiso -t mobyqemuiso:build -
docker run -it --rm mobyqemuiso:build
test: Dockerfile.test alpine/initrd.img.gz alpine/kernel/x86_64/vmlinuz64
test: Dockerfile.test alpine/initrd.img alpine/kernel/x86_64/vmlinuz64
$(MAKE) -C alpine
tar cf - $^ | docker build -f Dockerfile.test -t mobytest:build -
touch test.log

View File

@ -3,7 +3,7 @@ FROM mobylinux/alpine-bios:626757290dbb54109514af22108645cae9ea40c3
WORKDIR /tmp/iso
COPY initrd.img.gz ./
COPY initrd.img ./
COPY kernel/x86_64/vmlinuz64 ./
COPY isolinux.cfg ./isolinux/

View File

@ -3,7 +3,7 @@ FROM mobylinux/alpine-efi:2f8c8e9ecc4bfefaf1b5ca56bac5506baba301f2
WORKDIR /tmp/efi
COPY initrd.img.gz ./
COPY initrd.img ./
COPY kernel/x86_64/vmlinuz64 ./
# Create a EFI boot file with kernel and initrd. From:
@ -14,7 +14,7 @@ RUN cp /usr/lib/gummiboot/linuxx64.efi.stub . && \
--add-section .osrel=/etc/os-release --change-section-vma .osrel=0x20000 \
--add-section .cmdline=./cmdline.txt --change-section-vma .cmdline=0x30000 \
--add-section .linux=./vmlinuz64 --change-section-vma .linux=0x40000 \
--add-section .initrd=initrd.img.gz --change-section-vma .initrd=0x3000000 \
--add-section .initrd=initrd.img --change-section-vma .initrd=0x3000000 \
./linuxx64.efi.stub \
mobylinux.efi

View File

@ -1,4 +1,4 @@
all: initrd.img.gz mobylinux-efi.iso
all: initrd.img mobylinux-efi.iso
ETCFILES=etc/issue etc/motd etc/network/interfaces
ETCFILES+=etc/inittab etc/fstab
@ -33,15 +33,12 @@ initrd.img: Dockerfile mkinitrd.sh init $(ETCFILES) common
docker build -t moby-initrd:build -
docker run --net=none --rm moby-initrd:build > $@
initrd.img.gz: initrd.img
cat initrd.img | gzip -9 > initrd.img.gz
mobylinux-efi.iso: Dockerfile.efi initrd.img.gz kernel/x86_64/vmlinuz64
mobylinux-efi.iso: Dockerfile.efi initrd.img kernel/x86_64/vmlinuz64
tar cf - $^ | docker build -t moby-efi:build -f Dockerfile.efi -
docker run --net=none --rm --cap-add sys_admin moby-efi:build cat /tmp/efi/mobylinux.efi > mobylinux.efi
docker run --net=none --rm --cap-add sys_admin moby-efi:build cat /tmp/efi/mobylinux-efi.iso > $@
mobylinux-bios.iso: Dockerfile.bios initrd.img.gz kernel/x86_64/vmlinuz64 isolinux.cfg
mobylinux-bios.iso: Dockerfile.bios initrd.img kernel/x86_64/vmlinuz64 isolinux.cfg
tar cf - $^ | docker build -t moby-bios:build -f Dockerfile.bios -
docker run --net=none --rm moby-bios:build cat /tmp/mobylinux-bios.iso > $@
@ -62,8 +59,7 @@ azure: common
docker-compose run --rm -T azure uploadvhd
clean:
rm -f initrd.img initrd.img.gz mobylinux.vhd mobylinux.img
rm -f mobylinux-bios.iso mobylinux-efi.iso mobylinux.efi
rm -f initrd.img mobylinux.vhd mobylinux.img mobylinux-bios.iso mobylinux-efi.iso mobylinux.efi
docker images -q alpine_ami:latest | xargs docker rmi -f || true
docker images -q alpine_azure:latest | xargs docker rmi -f || true
$(MAKE) -C packages clean

View File

@ -1,5 +1,5 @@
DEFAULT linux
LABEL linux
KERNEL /vmlinuz64
INITRD /initrd.img.gz
INITRD /initrd.img
APPEND earlyprintk=serial console=ttyS0 console=tty1

View File

@ -35,4 +35,4 @@ printf 'moby' > /tmp/etc/hostname
rm /tmp/mkinitrd.sh
cd /tmp
find . | cpio -H newc -o
find . | cpio -H newc -o | gzip -9