v86 Docker & Self-Hosted Deployment

GitHub

X86 PC emulator and x86-to-wasm JIT, running in the browser

23,361 stars JavaScript JavaScript 1 file ยท ~16,182 tokens #emulator#virtualization#wasm#x86
1. Pull Image (DOCKERHUB) docker pull copy/v86:latest
2. Docker Run (1-Click Launch) docker run -d --name v86 --restart always copy/v86:latest
3. Podman Run podman run -d --name v86 --restart always copy/v86:latest
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://docker.io/copy/v86:latest
5. ORAS Pull (OCI Artifact) oras pull copy/v86:latest
tools/docker/exec/Dockerfile
FROM alpine:3.19 as v86-builder
WORKDIR /v86

RUN apk add --update curl clang make openjdk8-jre-base npm python3

RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y && PATH="${HOME}/.cargo/bin:${PATH}" rustup target add wasm32-unknown-unknown

COPY . .

RUN PATH="${HOME}/.cargo/bin:${PATH}" make all && rm -rf closure-compiler gen lib src tools .cargo cargo.toml Makefile

FROM python:3.10.13-alpine3.19
WORKDIR /v86

COPY --from=v86-builder v86 .

ARG PORT=8000
CMD python3 -m http.server ${PORT}

EXPOSE ${PORT}