Network "barkati" is declared as external, but it is not in the right scope: "local" instead of "swarm"

Please share the output of docker network inspect barkati.

It seems like you created the network without the parameter -d overlay.
Note: if you want non-swarm container to be able to use the same network, you also need the parameter --attachable

Note2: last time I checked, swarm services have not been able to use ipv4_address, as this feature was not implemented for swarm services. I expect it to be the next error message, after you re-created your network as overlay network.