Initial base layers docker files

Change-Id: I7bfca1cd80ecdff8f80091b5d640adbf510b9436
This commit is contained in:
Proskurin Kirill 2016-05-10 13:25:19 +03:00 committed by Artur Zarzycki
parent 7e3e6aea55
commit e0ce4bc28a
8 changed files with 160 additions and 0 deletions

66
.gitignore vendored Normal file
View File

@ -0,0 +1,66 @@
*.py[cod]
# C extensions
*.so
# Packages
*.egg
*.egg-info
dist
build
.eggs
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg
lib
lib64
# Installer logs
pip-log.txt
# Unit test / coverage reports
.coverage
cover
.tox
nosetests.xml
.testrepository
.venv
# Translations
*.mo
# Mr Developer
.mr.developer.cfg
.project
.pydevproject
# Complexity
output/*.html
output/*/index.html
# Sphinx
doc/build
# oslo-config-generator
etc/*.sample
# pbr generates these
AUTHORS
ChangeLog
# Editors
*~
.*.swp
.*sw?
# Vagrant
.vagrant
vagrant/Vagrantfile.custom
vagrant/vagrantkey*
# generated openrc
openrc

View File

@ -0,0 +1,8 @@
FROM {{ namespace }}/base:{{ tag }}
MAINTAINER {{ maintainer }}
# This will prevent questions from being asked during the install
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get install -y --no-install-recommends lvm2 open-iscsi tgt vim less patch \
&& apt-get clean

25
docker/base/Dockerfile.j2 Normal file
View File

@ -0,0 +1,25 @@
FROM {{ base_distro }}:{{ base_tag }}
MAINTAINER {{ maintainer }}
# This will prevent questions from being asked during the install
ENV DEBIAN_FRONTEND noninteractive
COPY sources.list.debian /etc/apt/sources.list
COPY apt_preferences.debian /etc/apt/preferences
# Ceph and Mariadb keys
RUN apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 08B73419AC32B4E966C1A330E84AC2C0460F3994 \
&& apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
RUN apt-get update \
&& apt-get upgrade -y \
&& apt-get dist-upgrade -y \
&& apt-get install -y --no-install-recommends ca-certificates curl sudo openssl python python-jinja2 python-six \
&& curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py \
&& python get-pip.py \
&& rm get-pip.py \
&& apt-get clean
COPY sudoers /etc/sudoers
RUN chmod 440 /etc/sudoers \
&& groupadd microservices

View File

@ -0,0 +1,7 @@
Package: *
Pin: origin "download.ceph.com"
Pin-Priority: 500
Package: *
Pin: origin "lon1.mirrors.digitalocean.com"
Pin-Priority: 500

View File

@ -0,0 +1,17 @@
# Default repos
deb http://httpredir.debian.org/debian jessie main
# jessie-backports
deb http://httpredir.debian.org/debian jessie-backports main contrib
# jessie-updates, previously known as 'volatile'
deb http://httpredir.debian.org/debian jessie-updates main
# debian security updates
deb http://security.debian.org jessie/updates main
# Ceph repo
deb http://download.ceph.com/debian-hammer/ jessie main
# Maria DB repo
deb [arch=amd64,i386] http://lon1.mirrors.digitalocean.com/mariadb/repo/10.1/debian jessie main

12
docker/base/sudoers Normal file
View File

@ -0,0 +1,12 @@
Defaults: %microservices setenv
# root may run any commands via sudo as the network seervice user. This is
# neededfor database migrations of existing services which have not been
# converted to run as a non-root user, but instead do that via sudo -E glance
root ALL=(ALL) ALL
# anyone in the kolla group may run /usr/local/bin/kolla_set_configs as the
# root user via sudo without password confirmation
%microservices ALL=(root) NOPASSWD: /usr/bin/install
#includedir /etc/sudoers.d

View File

@ -0,0 +1,9 @@
#!/bin/bash
### Temp docker syntax checker script. Doesnt really check something...
set -e
for file in $(find . -name 'Dockerfile.j2')
do
fgrep -q FROM $file || echo 'Miss/ wrong FROM section in file' $file
fgrep -q MAINTAINER $file || echo 'Miss/ wrong MAINTEINER section in file' $file
done

16
tox.ini Normal file
View File

@ -0,0 +1,16 @@
[tox]
minversion = 1.6
envlist = py34,py27,pypy,pep8
skipsdist = True
[testenv:linters]
commands =
{toxinidir}/tools/run-check-docker-syntax.sh
[testenv:pep8]
commands =
{toxinidir}/tools/run-check-docker-syntax.sh
[testenv:bashate]
commands =
{toxinidir}/tools/run-check-docker-syntax.sh