48 lines
1.7 KiB
YAML
48 lines
1.7 KiB
YAML
services:
|
|
disk-image:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
args:
|
|
USER_ID: ${USER_ID:-1000}
|
|
GROUP_ID: ${GROUP_ID:-1000}
|
|
container_name: disk-image
|
|
hostname: disk-image
|
|
working_dir: /workspace
|
|
volumes:
|
|
- ./:/workspace
|
|
tty: true
|
|
stdin_open: true
|
|
command: >
|
|
bash -c "
|
|
source /workspace/yocto/poky/oe-init-build-env /workspace/build &&
|
|
cp /workspace/conf/* /workspace/build/conf/ &&
|
|
bitbake core-image-minimal &&
|
|
echo 'Build complete. Image files available in output directory.'
|
|
"
|
|
|
|
qemu-server:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
args:
|
|
USER_ID: ${USER_ID:-1000}
|
|
GROUP_ID: ${GROUP_ID:-1000}
|
|
container_name: qemu-server
|
|
hostname: qemu-server
|
|
working_dir: /workspace
|
|
network_mode: "host"
|
|
volumes:
|
|
- ./:/workspace
|
|
tty: true
|
|
stdin_open: true
|
|
depends_on:
|
|
- disk-image
|
|
command: >
|
|
bash -c "
|
|
echo 'Starting QEMU with host networking...' &&
|
|
echo 'VNC will be available on localhost:5901' &&
|
|
echo 'SSH will be available on localhost:2222' &&
|
|
echo 'QEMU monitor on localhost:4444' &&
|
|
qemu-system-x86_64 -cpu core2duo -m 2048 -smp 2 -kernel /workspace/build/tmp/deploy/images/genericx86-64/bzImage -drive file=/workspace/build/tmp/deploy/images/genericx86-64/core-image-minimal-genericx86-64.rootfs.ext4,if=virtio,format=raw -netdev user,id=net0,hostfwd=tcp:127.0.0.1:2222-:22,hostfwd=tcp:127.0.0.1:8080-:8080 -device virtio-net-pci,netdev=net0 -vnc 127.0.0.1:1 -monitor telnet:127.0.0.1:4444,server,nowait -serial stdio -append 'root=/dev/vda rw console=ttyS0 console=tty0'
|
|
" |