Reinicie el contenedor docker en modo privilegiado

Tengo un contenedor docker que no hace frente a la carga.

Necesito aumentar el valor en /proc/sys/net/core/somaxconn pero no puedo hacerlo porque el contenedor no se está ejecutando en modo privilegiado.

Desde la creación del archivo docker, ha habido varios ajustes en las configuraciones de nignx y php.

¿Es posible reiniciar el contenedor con modo privilegiado sin perder los cambios de configuración que ya he realizado?

>La configuración del contenedor se encuentra en /var / lib/docker/containers/<id / hostconfig.json: puede editarlo y reiniciar su contenedor, pero docker no debería estar ejecutándose cuando lo edite.

# docker run -ti --name test fedora:25 /bin/bash# echo 512 > /proc/sys/net/core/somaxconn   # in dockerbash: /proc/sys/net/core/somaxconn: Read-only file system# exit # exit docker, back to host# systemctl stop docker # or stop it with whatever servicemanager you're using# cd /var/lib/docker/containers/b48fcbce0ab29749160e5677e3e9fe07cc704b47e84f7978fa74584f6d9d3c40/# cp hostconfig.json{,.bak}# cat hostconfig.json.bak | jq '.Privileged=true' | jq '.SecurityOpt=["label=disable"]' > hostconfig.json# systemctl start docker# docker start testtest# docker exec -ti test /bin/bash# echo 512 > /proc/sys/net/core/somaxconn   # in docker, now works

Esto, por supuesto, apagará todos los contenedores mientras realiza los cambios.

No, y no debe configurar contenedores directamente. Hacerlo da como resultado un entorno que es difícil de mantener (lo que ha encontrado). Incluye tu configuración en docker-compose.yml, un volumen adjunto o el Dockerfile, según corresponda. Eso le permite actualizar el contenedor reemplazándolo.

Como referencia, las únicas configuraciones que Docker le permite actualizar en un contenedor en ejecución son las siguientes:

$ docker update --helpUsage:  docker update [OPTIONS] CONTAINER [CONTAINER...]Update configuration of one or more containersOptions:      --blkio-weight uint16        Block IO (relative weight), between 10                                   and 1000, or 0 to disable (default 0)      --cpu-period int             Limit CPU CFS (Completely Fair Scheduler)                                   period      --cpu-quota int              Limit CPU CFS (Completely Fair Scheduler)                                   quota      --cpu-rt-period int          Limit the CPU real-time period in microseconds      --cpu-rt-runtime int         Limit the CPU real-time runtime in                                   microseconds  -c, --cpu-shares int             CPU shares (relative weight)      --cpus decimal               Number of CPUs      --cpuset-cpus string         CPUs in which to allow execution (0-3, 0,1)      --cpuset-mems string         MEMs in which to allow execution (0-3, 0,1)      --help                       Print usage      --kernel-memory bytes        Kernel memory limit  -m, --memory bytes               Memory limit      --memory-reservation bytes   Memory soft limit      --memory-swap bytes          Swap limit equal to memory plus swap:                                   '-1' to enable unlimited swap      --restart string             Restart policy to apply when a container exits