ff7c993060
### Why I did it HLD implementation: Container Hardening (https://github.com/sonic-net/SONiC/pull/1364) ##### Work item tracking - Microsoft ADO **(number only)**: 14807420 #### How I did it Reduce linux capabilities in privileged flag #### How to verify it Check container's settings: Privileged is false and container only has default Linux caps, does not have extended caps. ``` admin@vlab-01:~$ docker inspect p4rt | grep Privi "Privileged": false, admin@vlab-01:~$ docker exec -it p4rt bash root@vlab-01:/# capsh --print Current: cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_kill,cap_setgid,cap_setuid,cap_setpcap,cap_net_bind_service,cap_net_raw,cap_sys_chroot,cap_mknod,cap_audit_write,cap_setfcap=ep ```
40 lines
1.5 KiB
Makefile
40 lines
1.5 KiB
Makefile
# docker image for p4rt
|
|
|
|
DOCKER_P4RT_STEM = docker-sonic-p4rt
|
|
DOCKER_P4RT = $(DOCKER_P4RT_STEM).gz
|
|
DOCKER_P4RT_DBG = $(DOCKER_P4RT_STEM)-$(DBG_IMAGE_MARK).gz
|
|
|
|
$(DOCKER_P4RT)_PATH = $(DOCKERS_PATH)/$(DOCKER_P4RT_STEM)
|
|
|
|
$(DOCKER_P4RT)_DEPENDS += $(SONIC_P4RT)
|
|
$(DOCKER_P4RT)_DBG_DEPENDS = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_DEPENDS)
|
|
$(DOCKER_P4RT)_DBG_DEPENDS += $(SONIC_P4RT_DBG) $(LIBSWSSCOMMON_DBG)
|
|
$(DOCKER_P4RT)_DBG_DEPENDS += $(LIBSAIREDIS_DBG)
|
|
$(DOCKER_P4RT)_DBG_IMAGE_PACKAGES = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_IMAGE_PACKAGES)
|
|
|
|
$(DOCKER_P4RT)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE_BULLSEYE)
|
|
|
|
$(DOCKER_P4RT)_VERSION = 1.0.0
|
|
$(DOCKER_P4RT)_PACKAGE_NAME = p4rt
|
|
$(DOCKER_P4RT)_WARM_SHUTDOWN_BEFORE = swss
|
|
$(DOCKER_P4RT)_FAST_SHUTDOWN_BEFORE = swss
|
|
|
|
# TODO: Enable P4RT DBG
|
|
SONIC_DOCKER_IMAGES += $(DOCKER_P4RT)
|
|
SONIC_BULLSEYE_DOCKERS += $(DOCKER_P4RT)
|
|
# SONIC_DOCKER_DBG_IMAGES += $(DOCKER_P4RT_DBG)
|
|
# SONIC_BULLSEYE_DBG_DOCKERS += $(DOCKER_P4RT_DBG)
|
|
|
|
ifeq ($(INCLUDE_P4RT), y)
|
|
SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_P4RT)
|
|
# SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_P4RT_DBG)
|
|
endif
|
|
|
|
$(DOCKER_P4RT)_CONTAINER_NAME = p4rt
|
|
$(DOCKER_P4RT)_RUN_OPT += -t
|
|
$(DOCKER_P4RT)_RUN_OPT += -v /etc/sonic:/etc/sonic:ro
|
|
$(DOCKER_P4RT)_RUN_OPT += -v /etc/timezone:/etc/timezone:ro
|
|
$(DOCKER_P4RT)_GIT_COMMIT = $(shell cd "$($(SONIC_P4RT)_SRC_PATH)" && git log -n 1 --format=format:"%H %s" || echo "Unable to fetch git log for p4rt")
|
|
|
|
$(DOCKER_P4RT)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
|