Memory-swap vs. memory-swappiness and using in docker-compose

I have some questions (questions in bold):
1.memory-swap and memory-swappiness

In “PREVENT A CONTAINER FROM USING SWAP” it says:

If --memory and --memory-swap are set to the same value, this prevents containers from using any swap.

But wouldn’t that be the same if I set memory-swappiness to 0?
It was not 100% clear for me from this part of documention.




2. docker-compose v3

In the above link it says:

cpu_shares, cpu_quota, cpuset, mem_limit, memswap_limit: These have been replaced by the resources key under deploy. deploy configuration only takes effect when using docker stack deploy, and is ignored by docker-compose.

Is there any way to use mem_limit, memswap_limit in docker-compose (no docker stack deploy) with file version 3? Or workarounds other ways to set swapping to 0?

Thanks!

Sorry again: Has really nobody an idea?

Ok found something here, that explains my second question:


Seems that compose file v3 is meant to be used in swarm mode and not with docker-compose and I have to stay in v2 if I want to have these features.

Now only question 1 is missing!

Why doesn’t docker simply document whatever happened to memswap_limit?
It cannot be specified in Compose 3.7 yaml and I can’t find any references to configuration related to “swap”.


This github issue was shut down:

This stackoverflow thread is just as confused as we are:

Hello everyone,
I have a strange behavior on my docker swarm nodes that I share here to understand if it is normal operation or if someone haveing any advice for me.
I start by saying that on all nodes I have run the following commands (obviously after I have restarted all swarm nodes):

sysctl vm.swappiness=0

sysctl vm.overcommit_memory=1

The apparent problem is that I’m noticing heavy swap usage without RAM being used.
I don’t know if it is a normal behavior or if someone can advise me on how to use swap only if the available RAM is low (or finished).
I don’t know if I was able to explain myself. This is not causing problems for nodes stability that are functioning normally without any issue, I was just alarmed to see if this may be a problem or not.
The RAM of each docker node is 32GB and the swap is 2GB.

Thanks for your attention.
Claudio