diff --git a/files/build_templates/docker_image_ctl.j2 b/files/build_templates/docker_image_ctl.j2 index 9c7afa84b25..3fb21e00988 100644 --- a/files/build_templates/docker_image_ctl.j2 +++ b/files/build_templates/docker_image_ctl.j2 @@ -31,7 +31,7 @@ function updateSyslogConf() { # On multiNPU platforms, change the syslog target ip to docker0 ip to allow logs from containers # running on the namespace to reach the rsyslog service running on the host - # Also update the container name + # Also update the container name if [[ ($NUM_ASIC -gt 1) ]]; then TARGET_IP=$(docker network inspect bridge --format={{ "'{{(index .IPAM.Config 0).Gateway}}'" }}) CONTAINER_NAME="$DOCKERNAME" @@ -364,9 +364,11 @@ start() { -e SX_API_SOCKET_FILE=/var/run/sx_sdk/sx_api.sock \ -v /dev/shm:/dev/shm:rw \ {%- else %} +{%- if mount_default_tmpfs|default("n") == "y" %} --tmpfs /tmp \ {%- endif %} {%- endif %} +{%- endif %} {%- if sonic_asic_platform == "broadcom" %} {%- if docker_container_name == "syncd" %} -v /var/run/docker-syncd$DEV:/var/run/sswsyncd \ @@ -388,13 +390,23 @@ start() { $REDIS_MNT \ -v /usr/share/sonic/device/$PLATFORM:/usr/share/sonic/platform:ro \ {%- if sonic_asic_platform != "mellanox" %} +{%- if mount_default_tmpfs|default("n") == "y" %} --tmpfs /tmp \ {%- endif %} +{%- endif %} +{%- if mount_default_tmpfs|default("n") == "y" %} --tmpfs /var/tmp \ +{%- endif %} --env "NAMESPACE_ID"="$DEV" \ --env "NAMESPACE_PREFIX"="$NAMESPACE_PREFIX" \ --env "NAMESPACE_COUNT"=$NUM_ASIC \ - --name=$DOCKERNAME {{docker_image_name}}:latest || { + --name=$DOCKERNAME \ +{%- if docker_image_name is defined %} + {{docker_image_name}}:latest \ +{%- else %} + {{docker_image_id}} \ +{%- endif %} + || { echo "Failed to docker run" >&1 exit 4 } diff --git a/slave.mk b/slave.mk index 6bd66ff589c..d62137e97a8 100644 --- a/slave.mk +++ b/slave.mk @@ -923,6 +923,7 @@ $(addprefix $(TARGET_PATH)/, $(SONIC_INSTALLERS)) : $(TARGET_PATH)/% : \ export docker_image="$(docker)" export docker_image_name="$(basename $(docker))" export docker_container_name="$($(docker:-dbg.gz=.gz)_CONTAINER_NAME)" + export mount_default_tmpfs="y" $(eval $(docker:-dbg.gz=.gz)_RUN_OPT += $($(docker:-dbg.gz=.gz)_$($*_IMAGE_TYPE)_RUN_OPT)) export docker_image_run_opt="$($(docker:-dbg.gz=.gz)_RUN_OPT)"