(Note this is hopefully the last binary I make available 'by hand'. I hope
to do this automatically in the future after automated builds complete,
with a way for anyone to publish to any Docker registry).

The Ghost blogging platform is now available as a Rumprun binary from
unikernel.teksilo.com.

Please find instructions for downloading the binary below.
Ghost is a heavyweight Node.js application (the Internationalization support
alone is 77Mb on disk) and requires a lot of memory. A macro-service
perhaps?


# Make sure you have TUF's dependencies
sudo apt-get install build-essential libssl-dev libffi-dev python-dev
python-pip

# Install dtuf. Use --upgrade if you don't have at least v3.0.0
pip install python-dtuf

# Point dtuf to my Docker registry
export DTUF_HOST=unikernel.teksilo.com:5000

# This is the public key for my Ghost repo. Normal due diligence applies.
pkey_url=
https://raw.githubusercontent.com/davedoesdev/dtuf-keys/master/unikernel.teksilo.com/teksilo/ghost/root_key.pub

# Download Ghost metadata
curl $pkey_url | dtuf pull-metadata teksilo/ghost -

# Download v0.7.8
dtuf pull-target teksilo/ghost 0.7.8-x86_64-rumprun-netbsd-hw_generic >
ghost

# Download a data image for Ghost. Ghost will write all its data to this
image.
# The image is ext2 formatted and the Ghost configuration is in /config.js.
# You can change the configuration if you like (loopback mount the image or
# use e2tools).
dtuf pull-target teksilo/ghost data.img > ghost_data.img

# Run Ghost. Once running, blog away at http://localhost:2368
qemu-system-x86_64 -enable-kvm -m 1024 -kernel ghost -drive
if=virtio,file=ghost_data.img -net nic,model=virtio -net
user,hostfwd=tcp::2368-:2368 -append '{"net": {"if": "vioif0",, "type":
"inet",,  "method":"dhcp"},, "blk": {"source": "dev",, "path":
"/dev/ld0a",, "fstype": "blk",, "mountpoint": "/ghost_data"},, "env":
"GHOST_CONFIG=/ghost_data/config.js",, "cmdline": "node
--code-range-size=64"}'

Reply via email to