dev: initial environment

fedora, centos and ubuntu

* fewer layers
* systemd-dev
* basic pieces for building docker everytime
* centos updates
* better automated build
This commit is contained in:
Vincent Batts 2013-12-13 14:23:08 -05:00 committed by Vincent Batts
parent dd61e1eb1a
commit 57c47d0cdc
12 changed files with 288 additions and 0 deletions

41
fedora-dev/Dockerfile.in Normal file
View file

@ -0,0 +1,41 @@
FROM FROM_IMAGE
RUN yum erase -y vim-minimal && \
groupadd -g 990 docker && \
yum groupinstall -y "development tools" && \
yum install -y --setopt=override_install_langs=en --setopt=tsflags=nodocs \
yum-utils \
git \
golang \
mercurial \
bzr \
vim-enhanced \
quilt \
fedora-packager \
sudo \
screen \
libtool \
gtk-doc \
intltool \
libgcrypt-devel \
gperf \
libcap-devel \
wget \
tig \
glibc-static \
device-mapper-devel \
btrfs-progs-devel \
sqlite-devel \
glib2-devel \
libmount-devel \
dbus-devel \
keychain \
tito && \
yum update -y && \
yum clean all && \
useradd -m -u 1000 -G wheel,mock DEV_USER && \
sed -ri 's/^(%wheel.*)(ALL)$/\1NOPASSWD: \2/' /etc/sudoers
USER DEV_USER
ENV HOME /home/DEV_USER
WORKDIR /home/DEV_USER
CMD bash -l

View file

@ -0,0 +1,31 @@
FROM fedora:rawhide
RUN yum erase -y vim-minimal &&\
yum groupinstall -y "development tools" && \
yum install -y --setopt=override_install_langs=en --setopt=tsflags=nodocs \
yum-utils \
git \
golang \
mercurial \
bzr \
vim-enhanced \
fedora-packager \
sudo \
screen \
libtool \
gtk-doc \
intltool \
libgcrypt-devel \
gperf \
libcap-devel \
glib2-devel \
keychain \
tito && \
yum update -y && \
yum clean all && \
useradd -m -u 1000 -G wheel,mock vbatts && \
sed -ri 's/^(%wheel.*)(ALL)$/\1NOPASSWD: \2/' /etc/sudoers
USER vbatts
ENV HOME /home/vbatts
WORKDIR /home/vbatts
CMD bash -l

28
fedora-dev/Makefile Normal file
View file

@ -0,0 +1,28 @@
DOCKER ?= $(shell which docker)
FROM_IMAGE ?= fedora
#FROM_TAG ?= 21
FROM_TAG ?= latest
FROM := $(FROM_IMAGE):$(FROM_TAG)
REGISTRY ?= docker.usersys
NAME ?= $(REGISTRY)/$(USER)/$(FROM_IMAGE)-dev:$(FROM_TAG)
default: build
Dockerfile: Dockerfile.in
m4 --define=DEV_USER=$(USER) --define=FROM_IMAGE=$(FROM) $< > $@
build: .build
.build: Dockerfile .pull
$(DOCKER) build -t $(NAME) . && touch $@
pull: .pull
.pull:
$(DOCKER) pull $(FROM) && touch $@
clean:
rm -rf .build .pull Dockerfile *~