Large update which includes the following
- The introduction of a tools container which can be expanded as
necessary. It connects to voltha and kafka networks
- The introduction of the envoy proxy container
- The addition of an option to the CreateInstaller.sh script to rebuild
the voltha VM to pick up any new code changes
- A fix to work around a dpkg issue where it didn't handle depnedencies
propoerly
- Addition of start and stop scripts for the voltha suite and the use of
those scripts by the installer. The old per service start eliminated
from the installer
- Increased the number of vCPUs used by the installer and the voltha VM
to speed up installer creation.
Note the envoy proxy has not been integrated into the voltha suite yet,
this commit adds the container and some preliminary configuration but
integration of the proxy will be committed in a subsequent update.
Addressed comments from the reviewers
Change-Id: I5475f110ba955631baf05b0e34aa6a934ca69a24
diff --git a/docker/Dockerfile.tools b/docker/Dockerfile.tools
new file mode 100755
index 0000000..08956a2
--- /dev/null
+++ b/docker/Dockerfile.tools
@@ -0,0 +1,49 @@
+#!/usr/bin/env python
+#
+# Copyright 2016 the original author or authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+FROM cord/voltha-base
+
+MAINTAINER Sergio Slobodrian <sslobodr@ciena.com>
+
+# Bundle app source
+#RUN mkdir /cli && touch /cli/__init__.py
+#ENV PYTHONPATH=/cli
+#COPY common /cli/common
+#COPY cli /cli/cli
+#COPY voltha /cli/voltha
+RUN useradd -b /home -d /home/tools tools -s /bin/bash
+RUN mkdir /home/tools
+COPY docker/config/bashrc /home/tools/.bashrc
+RUN chown -R tools.tools /home/tools
+RUN echo "tools:tools" | chpasswd
+RUN apt-get update && apt-get -y upgrade && apt-get -y install openssh-server kafkacat iputils-ping vim manpages iproute2 net-tools moreutils
+RUN mkdir /var/run/sshd
+RUN echo 'root:screencast' | chpasswd
+RUN sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
+
+# SSH login fix. Otherwise user is kicked off after login
+RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd
+
+ENV NOTVISIBLE "in users profile"
+RUN echo "export VISIBLE=now" >> /etc/profile
+
+EXPOSE 22
+
+# Exposing process and default entry point
+ENTRYPOINT ["/usr/bin/dumb-init", "--"]
+
+CMD ["/usr/sbin/sshd", "-D"]