All Projects → joshkunz → qemu-docker

joshkunz / qemu-docker

Licence: other
A docker container for running x86_64 virtual machines using qemu

Programming Languages

shell
77523 projects
python
139335 projects - #7 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to qemu-docker

qemu-android-x86-runner
Quick Start on How to Run Android x86 in QEMU
Stars: ✭ 102 (+4.08%)
Mutual labels:  qemu
JavaQemu
JavaQemu is a Graphical User Interface Front End for QEMU, written in Java.
Stars: ✭ 28 (-71.43%)
Mutual labels:  qemu
Project-Mendacius
A GUI based virtualisation tool for running Linux on macOS Big Sur (x86 or arm64)
Stars: ✭ 107 (+9.18%)
Mutual labels:  qemu
FireMarshal
Software workload management tool for RISC-V based SoC research. This is the default workload management tool for Chipyard and FireSim.
Stars: ✭ 37 (-62.24%)
Mutual labels:  qemu
run qemu
A script to create bootable OS images, and run qemu with a locally built kernel.
Stars: ✭ 16 (-83.67%)
Mutual labels:  qemu
roborio-vm
Scripts to create QEMU virtual machine from the RoboRIO image file
Stars: ✭ 33 (-66.33%)
Mutual labels:  qemu
FEMU
FEMU: Accurate, Scalable and Extensible NVMe SSD Emulator (FAST'18)
Stars: ✭ 213 (+117.35%)
Mutual labels:  qemu
mmb
Set of Dockerfiles and assets related to them for building Docker images with different services
Stars: ✭ 34 (-65.31%)
Mutual labels:  qemu
virtnbdbackup
Backup utiliy for Libvirt / qemu / kvm supporting incremental and differencial backups.
Stars: ✭ 62 (-36.73%)
Mutual labels:  qemu
cv4pve-api-dotnet
Proxmox VE Client API .Net C#
Stars: ✭ 25 (-74.49%)
Mutual labels:  qemu
how-to-qemu-arm-gdb-gtest
How to run, debug, and unit test ARM code on X86 ubuntu
Stars: ✭ 19 (-80.61%)
Mutual labels:  qemu
packer-kvm
Create VM templates with Packer for usage with Libvirt/KVM virtualization : CentOS 7, CentOS 8, CentOS 8 Stream, Alma Linux, Rocky Linux, Bionic (Ubuntu 1804), Focal (Ubuntu 2004), Debian 11 (stable), Kali Linux, Fedora 33 and Fedora 34.
Stars: ✭ 99 (+1.02%)
Mutual labels:  qemu
js5005
js5005 is a virtual CPU with every logic gate simulated. A pretty interface, a built in assembler, display, and 256 bytes of RAM to boot. It's the better i4004.
Stars: ✭ 14 (-85.71%)
Mutual labels:  qemu
placemat
Virtual data center construction tool
Stars: ✭ 71 (-27.55%)
Mutual labels:  qemu
minio-multiarch
Nightly builds of Minio server Docker images. Compatible with arm64, armhf/armv7, and amd64.
Stars: ✭ 28 (-71.43%)
Mutual labels:  qemu
mdepx
MDEPX — A BSD-style RTOS
Stars: ✭ 17 (-82.65%)
Mutual labels:  qemu
edk2-nightly
Unofficial EDK2 nightly build
Stars: ✭ 20 (-79.59%)
Mutual labels:  qemu
cv4pve-botgram
Telegram Bot for Proxmox VE
Stars: ✭ 26 (-73.47%)
Mutual labels:  qemu
lima-gui
Making a GUI for lima VM
Stars: ✭ 36 (-63.27%)
Mutual labels:  qemu
m3forth
m3forth is a forth cross-compiler for cortex-m3 ARM microcontrollers
Stars: ✭ 16 (-83.67%)
Mutual labels:  qemu

qemu-docker

Test

This repository contains a Docker container for running x86_64 virtual machines using QEMU. It uses high-performance QEMU options (KVM, and TAP network driver).

Docker Hub: jkz0/qemu

Using the container

Via docker run:

$ docker run --rm -it \
    --device=/dev/kvm:/dev/kvm --device=/dev/net/tun:/dev/net/tun \
    --cap-add NET_ADMIN -v $VM_IMAGE_FILE:/image \
    jkz0/qemu:latest

Via docker-compose.yml:

version: "3"
services:
    vm:
        image: jkz0/qemu:latest
        cap_add:
            - NET_ADMIN
        devices:
            - /dev/net/tun
            - /dev/kvm
        volumes:
            - ${VM_IMAGE:?VM image must be supplied}:/image
        restart: always

Tips

  • VM networking is configured via DHCP, make sure to enable DHCP in your VM image. VMs will use the IP address of the container.
  • You can quit the VM (when attached to the container) by entering the special key sequence C-a x. Killing the docker container will also shut down the VM.

Caveat Emptor

  • Only x86_64 supported new. PRs to support other architectures welcome, though I imagine 99% of use-cases will be x86_64.
  • VMs will not be able to resolve container-names on user-defined bridges. This is due to the way Docker's "Embedded DNS" server works. VMs can still connect to other containers on the same bridge using IP addresses.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].