From c783931416d2a788e0b13945a1c0a953de6bdbad Mon Sep 17 00:00:00 2001 From: alexz Date: Wed, 7 Feb 2018 15:57:58 +0100 Subject: [PATCH] Dockerfile - trivial fixes * Move motd to file * Change borer symbol - old one can 'stuck' some terminals. * clean pip cache after build * remove dev-src from sources list Change-Id: I69df7ba916521920757460e546c066a80017b908 --- Dockerfile | 29 +++++++---------------------- etc/motd | 19 +++++++++++++++++++ 2 files changed, 26 insertions(+), 22 deletions(-) create mode 100644 etc/motd diff --git a/Dockerfile b/Dockerfile index 1a91cb9d75..8f9b1e0eb9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,7 @@ FROM ubuntu:16.04 +RUN sed -i s/^deb-src.*// /etc/apt/sources.list + RUN apt-get update && apt-get install --yes sudo python python-pip vim git-core && \ pip install --upgrade pip && \ useradd -u 65500 -m rally && \ @@ -7,37 +9,20 @@ RUN apt-get update && apt-get install --yes sudo python python-pip vim git-core echo "rally ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/00-rally-user COPY . /home/rally/source +COPY etc/motd /etc/motd WORKDIR /home/rally/source RUN pip install . --constraint upper-constraints.txt && \ mkdir /etc/rally && \ echo "[database]" > /etc/rally/rally.conf && \ echo "connection=sqlite:////home/rally/data/rally.db" >> /etc/rally/rally.conf -RUN echo '[ ! -z "$TERM" -a -r /etc/motd ] && cat /etc/motd' \ - >> /etc/bash.bashrc; echo '\ -╔═════════════════════════════════════════════════════════════════════════════╗\n\ -║ Welcome to Rally Docker container! ║\n\ -║ ║\n\ -║ WARNING: DO NOT OVERRIDE /home/rally DIRECTORY ║\n\ -║ ║\n\ -║ /home/rally/data - a default place with rally database. Use it for ║\n\ -║ mounting own directories and synchronizing rally database. ║\n\ -║ /home/rally/source - a directory with documentation, pre created tasks, ║\n\ -║ sampes and source code ║\n\ -║ /etc/rally/rally.conf - a default configuration file of rally. To override ║\n\ -║ it, mount custom configuration file to /home/rally/.rally/rally.conf ║\n\ -║ ║\n\ -║ Rally at readthedocs - http://rally.readthedocs.org ║\n\ -║ How to contribute - http://rally.readthedocs.org/en/latest/contribute.html ║\n\ -║ If you have any questions, you can reach the Rally team by: ║\n\ -║ * e-mail - openstack-dev@lists.openstack.org with tag [Rally] in subject ║\n\ -║ * gitter - https://gitter.im/xRally/Lobby room ║\n\ -║ * irc - "#openstack-rally" channel at freenode.net ║\n\ -╚═════════════════════════════════════════════════════════════════════════════╝\n' > /etc/motd +RUN echo '[ ! -z "$TERM" -a -r /etc/motd ] && cat /etc/motd' >> /etc/bash.bashrc +# Cleanup pip +RUN rm -rf /root/.cache/ USER rally ENV HOME /home/rally -RUN mkdir /home/rally/data && rally db recreate +RUN mkdir -p /home/rally/data && rally db recreate # Docker volumes have specific behavior that allows this construction to work. # Data generated during the image creation is copied to volume only when it's diff --git a/etc/motd b/etc/motd new file mode 100644 index 0000000000..2937e41718 --- /dev/null +++ b/etc/motd @@ -0,0 +1,19 @@ +############################################################################### +# Welcome to Rally Docker container! # +# # +# WARNING: DO NOT OVERRIDE /home/rally DIRECTORY # +# # +# /home/rally/data - a default place with rally database. Use it for # +# mounting own directories and synchronizing rally database. # +# /home/rally/source - a directory with documentation, pre created tasks, # +# sampes and source code # +# /etc/rally/rally.conf - a default configuration file of rally. To override # +# it, mount custom configuration file to /home/rally/.rally/rally.conf # +# # +# Rally at readthedocs - http://rally.readthedocs.org # +# How to contribute - http://rally.readthedocs.org/en/latest/contribute.html # +# If you have any questions, you can reach the Rally team by: # +# * e-mail - openstack-dev@lists.openstack.org with tag [Rally] in subject # +# * gitter - https://gitter.im/xRally/Lobby room # +# * irc - "#openstack-rally" channel at freenode.net # +###############################################################################