* Fix showing systemd shutdown sequence when verbose is set * Fix creation of kernel-cmdline file Sometimes boot0 prints error "mv: can't preserve ownership of '/mnt/flash/image-arsonic.xxxx/kernel-cmdline': Operation not permitted" * Improve flash space usage during installation Some older systems only have 2GB of flash available. Installing a second image on these can prove to be challenging. The new installation process moves the installer swi to memory in order to avoid free up space from the flash before uncompressing it there. It removes all the flash space usage spike and also improves the IO since the installation is no more reading and writting to the flash at the same time. * Add support of 7060CX-32S-SSD * 7260CX3: use inventory powerCycle procedures * 7050QX-32S: use inventory powerCycle procedures * 7050QX-32: use inventory powerCycle procedures * platform: arista: add common platform_reboot Replace platform_reboot by a link to new common for devices already using a similar script. * 7060CX-32S: use inventory powerCycle procedures * Install python smbus in pmon Some platform plugin need the python smbus library to perform some actions. This installs the dependency.
59 lines
2.0 KiB
Django/Jinja
Executable File
59 lines
2.0 KiB
Django/Jinja
Executable File
FROM docker-config-engine-stretch
|
|
|
|
ARG docker_container_name
|
|
RUN [ -f /etc/rsyslog.conf ] && sed -ri "s/%syslogtag%/$docker_container_name#%syslogtag%/;" /etc/rsyslog.conf
|
|
|
|
# Make apt-get non-interactive
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
# Install required packages
|
|
RUN apt-get update && apt-get install -y python-pip libpython2.7 ipmitool librrd8 librrd-dev rrdtool python-smbus
|
|
|
|
{% if docker_platform_monitor_debs.strip() -%}
|
|
# Copy locally-built Debian package dependencies
|
|
{%- for deb in docker_platform_monitor_debs.split(' ') %}
|
|
COPY debs/{{ deb }} /debs/
|
|
{%- endfor %}
|
|
|
|
# Install locally-built Debian packages and implicitly install their dependencies
|
|
{%- for deb in docker_platform_monitor_debs.split(' ') %}
|
|
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; dpkg_apt /debs/{{ deb }}
|
|
{%- endfor %}
|
|
{%- endif %}
|
|
|
|
{% if docker_platform_monitor_pydebs.strip() -%}
|
|
# Copy locally-built Debian package dependencies
|
|
{%- for deb in docker_platform_monitor_pydebs.split(' ') %}
|
|
COPY python-debs/{{ deb }} /debs/
|
|
{%- endfor %}
|
|
|
|
# Install locally-built Debian packages and implicitly install their dependencies
|
|
{%- for deb in docker_platform_monitor_pydebs.split(' ') %}
|
|
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; dpkg_apt /debs/{{ deb }}
|
|
{%- endfor %}
|
|
{%- endif %}
|
|
|
|
{% if docker_platform_monitor_whls.strip() -%}
|
|
# Copy locally-built Python wheel dependencies
|
|
{%- for whl in docker_platform_monitor_whls.split(' ') %}
|
|
COPY python-wheels/{{ whl }} /python-wheels/
|
|
{%- endfor %}
|
|
|
|
# Install locally-built Python wheel dependencies
|
|
{%- for whl in docker_platform_monitor_whls.split(' ') %}
|
|
RUN pip install /python-wheels/{{ whl }}
|
|
{%- endfor %}
|
|
{% endif %}
|
|
|
|
# Clean up
|
|
RUN apt-get purge -y python-pip
|
|
RUN apt-get clean -y
|
|
RUN apt-get autoclean -y
|
|
RUN apt-get autoremove -y
|
|
RUN rm -rf /debs /python-wheels ~/.cache
|
|
|
|
COPY ["docker_init.sh", "lm-sensors.sh", "/usr/bin/"]
|
|
COPY ["docker-pmon.supervisord.conf.j2", "start.sh.j2", "/usr/share/sonic/templates/"]
|
|
|
|
ENTRYPOINT ["/usr/bin/docker_init.sh"]
|