Regarding user/pass - it should be a user and his/her password that is allowed to access web app /registry in your IRIS server.

You can go to the list of Web Apps: http://localhost:52773/csp/sys/sec/%25CSP.UI.Portal.Applications.WebList... and observe other and setup your own.

It can be passwordless, basic authentication, bearer token, OAuth, delegated - whatever you decide in your system.

If you are on a community edition of IRIS from a vanilla iris docker image then login/pass you use for your admin access, e.g. to access Management Portal http://localhost:32783/csp/sys/%25CSP.Portal.Home.zen

will work for the registry as well.

There are two steps to publish into a registry. 

1. Load a package into a namespace - you can load from a file directory that contains module.xml, or from a github repo, e.g.

load /folder_with_module/

2. switch to a current registry, where you can publish. You can install your own registry, or use  a test registry, which is always avaliable for different tests:

ZPM:USER>repo -n registry -r -url https://test.pm.community.intersystems.com/registry/ -user test -pass PassWord42

3. Publish a pachage with the command:

publish package_name