Skip to content

Instantly share code, notes, and snippets.

@dstrctrng
Last active December 15, 2015 12:08
Show Gist options
  • Save dstrctrng/5257727 to your computer and use it in GitHub Desktop.
Save dstrctrng/5257727 to your computer and use it in GitHub Desktop.
ubuntu-precise-image.sh
#!/bin/bash
# run as a non-root user on Ubuntu Precise
export DEBIAN_FRONTEND="noninteractive"
sudo aptitude -y install lxc bsdtar libsqlite3-dev git pkg-config
sudo aptitude -y install linux-image-extra-$(uname -r)
sudo aptitude -y install golang 0<&-
cd
mkdir -p go/src/github.com/dotcloud
export GOPATH="$HOME/go"
PATH="$HOME/go/bin:$PATH"
git clone https://github.com/dotcloud/docker go/src/github.com/dotcloud/docker
cd go/src/github.com/dotcloud/docker
go get -v ./...
go build
cd
sudo rsync -ia $HOME/go/bin/docker /usr/local/bin/
rm -rf $HOME/go
echo "exec /usr/local/bin/docker -d" | sudo tee /etc/init/docker.conf
sudo service docker start
cd
sudo aptitude install debootstrap
sudo debootstrap --arch amd64 --include=language-pack-en,aptitude precise precise http://archive.ubuntu.com/ubuntu/
tmp_policy="$(mktemp -t XXXXXXXXX)"
cat > "$tmp_policy" <<EOF
#!/bin/bash
exit 101
EOF
sudo mv "$tmp_policy" precise/usr/sbin/policy-rc.d
sudo chmod 0755 precise/usr/sbin/policy-rc.d
sudo rsync -ia /etc/apt/sources.list precise/etc/apt/sources.list
sudo chroot precise aptitude update
sudo chroot precise apt-get install -y minimal^ server^ standard^
sudo chroot precise aptitude dist-upgrade -y
sudo chroot precise aptitude upgrade -y
sudo chroot precise aptitude clean
sudo rm -f precise/usr/sbin/policy-rc.d
sudo tar cfpj - -C precise . | docker import - precise
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment