@sktripamer/unifypass
v0.1.0
Published
Get Multipass instances with local domains on macOS in one command
Maintainers
Readme
UnifyPass
Get Multipass instances with local domains on macOS. One command to get up and running:
npm install -g unifypass
sudo unifypass startNow try accessing your instance with http://my-multipass-instance.multipass
By default, ports 80 and 443 are used. Need a specific port? Try this:
sudo unifypass start --ports 8010,8011 # Comma-separatedNow you can access http://my-multipass-instance.multipass:8010
NOTE: Heavy WIP, but the basic start/stop/configs should be working.
Features
- Automatic Resolution: Easy way to permanently access Multipass instances via
instancename.multipass - HTTP/HTTPS Support: Automatic protocol detection and SSL passthrough
- WebSocket Support: Full WebSocket proxy support
- Process Management: Run as a daemon with PM2
Installation
npm install -g unifypassQuick Start
- Start UnifyPass:
sudo unifypass start- Access your instances:
http://myinstance.multipass # HTTP
https://myinstance.multipass # HTTPS (if your instance uses SSL)Configuration
Create unify.config.js in your home directory:
module.exports = {
mac: {
// DNS settings
dnsPort: 5355,
domain: 'multipass', // Setting to local can cause issues
// Proxy settings
timeout: 5000, // Global timeout in ms
// Instance configurations
instances: {
'instancename': {
port: 3000, // Custom port (default: 80 for HTTP, 443 for HTTPS)
timeout: 10000 // Instance-specific timeout
}
}
}
};SSL Support
SSL works automatically:
- HTTP traffic is proxied normally
- HTTPS traffic is passed through to your instance
- No configuration needed in UnifyPass
To use SSL:
- Configure SSL in your instance/application
- Access via
https://instancename.multipass
Commands
# Start UnifyPass
unifypass start
# Start as daemon
unifypass start --daemon
# Stop UnifyPass
unifypass stop
# View logs
unifypass logs
# View status
unifypass status
# Configure instance
unifypass instance myapp --port 3000Troubleshooting
Common Issues
Connection Refused
- Check if your instance is running
- Verify the port configuration
- Ensure your app is listening on all interfaces (0.0.0.0)
DNS Resolution
- Run
sudo unifypass setupto configure DNS resolver - Check
/etc/resolver/localexists - Flush DNS cache:
sudo killall -HUP mDNSResponder
- Run
SSL Issues
- Ensure your instance has SSL properly configured
- Check your SSL certificates are valid
- Verify your app is listening on HTTPS
Need help? Open an issue
