Limit number of members in a call

I am trying to limit number of users in a call through mod_muc_max_occupants.lua. I found this file under jitsi-meet\resources\prosody-plugins. What should I change here so that limit of occupants in a room is only 3?

local split_jid = require "util.jid".split;
local st = require "util.stanza";
local it = require "util.iterators";
local is_healthcheck_room = module:require "util".is_healthcheck_room;

local whitelist = module:get_option_set("muc_access_whitelist");
local MAX_OCCUPANTS = module:get_option_number("muc_max_occupants", 3);

local function count_keys(t)
  return it.count(it.keys(t));

local function check_for_max_occupants(event)
  local room, origin, stanza =, event.origin, event.stanza;
  local user, domain, res = split_jid(stanza.attr.from);

  if is_healthcheck_room(room.jid) then

  --no user object means no way to check for max occupants
  if user == nil then
  -- If we're a whitelisted user joining the room, don't bother checking the max
  -- occupants.
  if whitelist and whitelist:contains(domain) or whitelist:contains(user..'@'..domain) then

	if room and not room._jid_nick[stanza.attr.from] then
        local max_occupants_by_room =;
		local count = count_keys(room._occupants);
        -- if no of occupants limit is set per room basis use
        -- that settings otherwise use the global one
        local slots = max_occupants_by_room or MAX_OCCUPANTS;

		-- If there is no whitelist, just check the count.
		if not whitelist and count >= slots then
			module:log("info", "Attempt to enter a maxed out MUC");
			origin.send(st.error_reply(stanza, "cancel", "service-unavailable"));
			return true;

		-- TODO: Are Prosody hooks atomic, or is this a race condition?
		-- For each person in the room that's not on the whitelist, subtract one
		-- from the count.
		for _, occupant in room:each_occupant() do
			user, domain, res = split_jid(occupant.bare_jid);
			if not whitelist:contains(domain) and not whitelist:contains(user..'@'..domain) then
				slots = slots - 1

		-- If the room is full (<0 slots left), error out.
		if slots <= 0 then
			module:log("info", "Attempt to enter a maxed out MUC");
			origin.send(st.error_reply(stanza, "cancel", "service-unavailable"));
			return true;

if MAX_OCCUPANTS > 0 then
	module:hook("muc-occupant-pre-join", check_for_max_occupants, 3);

Thanks I found the file here - ./jitsi-meet-cgf/prosody/config/conf.d/jitsi-meet.cfg.lua
Then I changed it this way:

Component "" "muc"
    storage = "memory"
    modules_enabled = {
    muc_max_occupants = "3"
    muc_room_cache_size = 1000
    muc_room_locking = false
    muc_room_default_public_jids = true

But since I am using a docker, everytime I restart docker, the file gets reset. How do I fix this?

Perhaps create automation script to update configuration as needed on start.