Repository files navigation

Kaazing Gateway Docker Tutorials

This repository provides examples of different Kaazing Gateway deployment scenarios. For ease of use and portability, these scenarios are provided using Docker.

Deployment Scenarios

Each subdirectory contains a scenario and instructions on how to run the setup locally.

Requirements

Docker and Docker Compose

These tutorials require that you have both Docker and Docker Compose installed. If you are unfamiliar with Docker there is a learning curve at the beginning, but we highly recommend getting familiar with it. Docker isn't just for production deployment. Even if you're just evaluating, prototyping, or developing, Docker is an excellent convenience that will make your life easier. It is well worth getting to know it.

Docker has some excellent documentation and tutorials. Here are some links to get you started:

Host file for DNS resolution

Some of these tutorials may require hostnames that resolve to the Docker host machine. To enable this resolution, add an entry in your hosts file that points to your Docker host's IP address for the given hostname, such as example.com.

If you are using Docker Machine, you can get the IP address with this command: docker-machine ip. If you are using Kitematic, go to Settings then Ports. For other examples, see 10 Examples of how to get Docker Container IP Address.

In many cases, the IP address defaults to 192.168.99.100.

Netcat

Some of these tutorials may use netcat to simulate a client or server.

If you are running on Windows, or don't have netcat installed, everywhere you see the nc command, replace it with a Docker image that contains netcat.

For example when using netcat as a client, if you see:

$ nc 192.168.99.100 5551

then replace it with:

$ docker run -it --rm konjak/netcat 192.168.99.100 5551

Once the netcat client is connected, you can type a message and press Enter to send it to the server.

Or to run netcat in Docker as a server (in listen mode):

$ docker run -it --rm -p 9000:9000 konjak/netcat -l 9000

then connect to it via the Docker IP address:

$ nc 192.168.99.100 9000

or

docker run -it --rm konjak/netcat 192.168.99.100 9000

See the Host file for DNS resolution section, above, for steps to get your Docker IP address.

Just like the netcat client, when the netcat server has received a connection, you can type a message and press Enter to send it to the client.

About

Examples and template configurations for Kaazing WebSocket Gateway

Resources

Stars

1 star

Watchers

30 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

Kaazing Gateway Docker Tutorials

This repository provides examples of different Kaazing Gateway deployment scenarios. For ease of use and portability, these scenarios are provided using Docker.

Deployment Scenarios

Each subdirectory contains a scenario and instructions on how to run the setup locally.

Requirements

Docker and Docker Compose

These tutorials require that you have both Docker and Docker Compose installed. If you are unfamiliar with Docker there is a learning curve at the beginning, but we highly recommend getting familiar with it. Docker isn't just for production deployment. Even if you're just evaluating, prototyping, or developing, Docker is an excellent convenience that will make your life easier. It is well worth getting to know it.

Docker has some excellent documentation and tutorials. Here are some links to get you started:

Host file for DNS resolution

Some of these tutorials may require hostnames that resolve to the Docker host machine. To enable this resolution, add an entry in your hosts file that points to your Docker host's IP address for the given hostname, such as example.com.

If you are using Docker Machine, you can get the IP address with this command: docker-machine ip. If you are using Kitematic, go to Settings then Ports. For other examples, see 10 Examples of how to get Docker Container IP Address.

In many cases, the IP address defaults to 192.168.99.100.

Netcat

Some of these tutorials may use netcat to simulate a client or server.

If you are running on Windows, or don't have netcat installed, everywhere you see the nc command, replace it with a Docker image that contains netcat.

For example when using netcat as a client, if you see:

$ nc 192.168.99.100 5551

then replace it with:

$ docker run -it --rm konjak/netcat 192.168.99.100 5551

Once the netcat client is connected, you can type a message and press Enter to send it to the server.

Or to run netcat in Docker as a server (in listen mode):

$ docker run -it --rm -p 9000:9000 konjak/netcat -l 9000

then connect to it via the Docker IP address:

$ nc 192.168.99.100 9000

or

docker run -it --rm konjak/netcat 192.168.99.100 9000

See the Host file for DNS resolution section, above, for steps to get your Docker IP address.

Just like the netcat client, when the netcat server has received a connection, you can type a message and press Enter to send it to the client.

About

Examples and template configurations for Kaazing WebSocket Gateway

Resources

Stars

1 star

Watchers

30 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Kaazing Gateway Docker Tutorials

This repository provides examples of different Kaazing Gateway deployment scenarios. For ease of use and portability, these scenarios are provided using Docker.

Deployment Scenarios

Each subdirectory contains a scenario and instructions on how to run the setup locally.

Requirements

Docker and Docker Compose

These tutorials require that you have both Docker and Docker Compose installed. If you are unfamiliar with Docker there is a learning curve at the beginning, but we highly recommend getting familiar with it. Docker isn't just for production deployment. Even if you're just evaluating, prototyping, or developing, Docker is an excellent convenience that will make your life easier. It is well worth getting to know it.

Docker has some excellent documentation and tutorials. Here are some links to get you started:

Host file for DNS resolution

Some of these tutorials may require hostnames that resolve to the Docker host machine. To enable this resolution, add an entry in your hosts file that points to your Docker host's IP address for the given hostname, such as example.com.

If you are using Docker Machine, you can get the IP address with this command: docker-machine ip. If you are using Kitematic, go to Settings then Ports. For other examples, see 10 Examples of how to get Docker Container IP Address.

In many cases, the IP address defaults to 192.168.99.100.

Netcat

Some of these tutorials may use netcat to simulate a client or server.

If you are running on Windows, or don't have netcat installed, everywhere you see the nc command, replace it with a Docker image that contains netcat.

For example when using netcat as a client, if you see:

$ nc 192.168.99.100 5551

then replace it with:

$ docker run -it --rm konjak/netcat 192.168.99.100 5551

Once the netcat client is connected, you can type a message and press Enter to send it to the server.

Or to run netcat in Docker as a server (in listen mode):

$ docker run -it --rm -p 9000:9000 konjak/netcat -l 9000

then connect to it via the Docker IP address:

$ nc 192.168.99.100 9000

or

docker run -it --rm konjak/netcat 192.168.99.100 9000

See the Host file for DNS resolution section, above, for steps to get your Docker IP address.

Just like the netcat client, when the netcat server has received a connection, you can type a message and press Enter to send it to the client.

About

Examples and template configurations for Kaazing WebSocket Gateway

Resources

Stars

1 star

Watchers

30 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Kaazing Gateway Docker Tutorials

This repository provides examples of different Kaazing Gateway deployment scenarios. For ease of use and portability, these scenarios are provided using Docker.

Deployment Scenarios

Each subdirectory contains a scenario and instructions on how to run the setup locally.

Requirements

Docker and Docker Compose

These tutorials require that you have both Docker and Docker Compose installed. If you are unfamiliar with Docker there is a learning curve at the beginning, but we highly recommend getting familiar with it. Docker isn't just for production deployment. Even if you're just evaluating, prototyping, or developing, Docker is an excellent convenience that will make your life easier. It is well worth getting to know it.

Docker has some excellent documentation and tutorials. Here are some links to get you started:

Host file for DNS resolution

Some of these tutorials may require hostnames that resolve to the Docker host machine. To enable this resolution, add an entry in your hosts file that points to your Docker host's IP address for the given hostname, such as example.com.

If you are using Docker Machine, you can get the IP address with this command: docker-machine ip. If you are using Kitematic, go to Settings then Ports. For other examples, see 10 Examples of how to get Docker Container IP Address.

In many cases, the IP address defaults to 192.168.99.100.

Netcat

Some of these tutorials may use netcat to simulate a client or server.

If you are running on Windows, or don't have netcat installed, everywhere you see the nc command, replace it with a Docker image that contains netcat.

For example when using netcat as a client, if you see:

$ nc 192.168.99.100 5551

then replace it with:

$ docker run -it --rm konjak/netcat 192.168.99.100 5551

Once the netcat client is connected, you can type a message and press Enter to send it to the server.

Or to run netcat in Docker as a server (in listen mode):

$ docker run -it --rm -p 9000:9000 konjak/netcat -l 9000

then connect to it via the Docker IP address:

$ nc 192.168.99.100 9000

or

docker run -it --rm konjak/netcat 192.168.99.100 9000

See the Host file for DNS resolution section, above, for steps to get your Docker IP address.

Just like the netcat client, when the netcat server has received a connection, you can type a message and press Enter to send it to the client.

About

Examples and template configurations for Kaazing WebSocket Gateway

Resources

Stars

1 star

Watchers

30 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

Kaazing Gateway Docker Tutorials

This repository provides examples of different Kaazing Gateway deployment scenarios. For ease of use and portability, these scenarios are provided using Docker.

Deployment Scenarios

Each subdirectory contains a scenario and instructions on how to run the setup locally.

Requirements

Docker and Docker Compose

These tutorials require that you have both Docker and Docker Compose installed. If you are unfamiliar with Docker there is a learning curve at the beginning, but we highly recommend getting familiar with it. Docker isn't just for production deployment. Even if you're just evaluating, prototyping, or developing, Docker is an excellent convenience that will make your life easier. It is well worth getting to know it.

Docker has some excellent documentation and tutorials. Here are some links to get you started:

Host file for DNS resolution

Some of these tutorials may require hostnames that resolve to the Docker host machine. To enable this resolution, add an entry in your hosts file that points to your Docker host's IP address for the given hostname, such as example.com.

If you are using Docker Machine, you can get the IP address with this command: docker-machine ip. If you are using Kitematic, go to Settings then Ports. For other examples, see 10 Examples of how to get Docker Container IP Address.

In many cases, the IP address defaults to 192.168.99.100.

Netcat

Some of these tutorials may use netcat to simulate a client or server.

If you are running on Windows, or don't have netcat installed, everywhere you see the nc command, replace it with a Docker image that contains netcat.

For example when using netcat as a client, if you see:

$ nc 192.168.99.100 5551

then replace it with:

$ docker run -it --rm konjak/netcat 192.168.99.100 5551

Once the netcat client is connected, you can type a message and press Enter to send it to the server.

Or to run netcat in Docker as a server (in listen mode):

$ docker run -it --rm -p 9000:9000 konjak/netcat -l 9000

then connect to it via the Docker IP address:

$ nc 192.168.99.100 9000

or

docker run -it --rm konjak/netcat 192.168.99.100 9000

See the Host file for DNS resolution section, above, for steps to get your Docker IP address.

Just like the netcat client, when the netcat server has received a connection, you can type a message and press Enter to send it to the client.

About

Examples and template configurations for Kaazing WebSocket Gateway

Resources

Stars

1 star

Watchers

30 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Kaazing Gateway Docker Tutorials

This repository provides examples of different Kaazing Gateway deployment scenarios. For ease of use and portability, these scenarios are provided using Docker.

Deployment Scenarios

Each subdirectory contains a scenario and instructions on how to run the setup locally.

Requirements

Docker and Docker Compose

These tutorials require that you have both Docker and Docker Compose installed. If you are unfamiliar with Docker there is a learning curve at the beginning, but we highly recommend getting familiar with it. Docker isn't just for production deployment. Even if you're just evaluating, prototyping, or developing, Docker is an excellent convenience that will make your life easier. It is well worth getting to know it.

Docker has some excellent documentation and tutorials. Here are some links to get you started:

Host file for DNS resolution

Some of these tutorials may require hostnames that resolve to the Docker host machine. To enable this resolution, add an entry in your hosts file that points to your Docker host's IP address for the given hostname, such as example.com.

If you are using Docker Machine, you can get the IP address with this command: docker-machine ip. If you are using Kitematic, go to Settings then Ports. For other examples, see 10 Examples of how to get Docker Container IP Address.

In many cases, the IP address defaults to 192.168.99.100.

Netcat

Some of these tutorials may use netcat to simulate a client or server.

If you are running on Windows, or don't have netcat installed, everywhere you see the nc command, replace it with a Docker image that contains netcat.

For example when using netcat as a client, if you see:

$ nc 192.168.99.100 5551

then replace it with:

$ docker run -it --rm konjak/netcat 192.168.99.100 5551

Once the netcat client is connected, you can type a message and press Enter to send it to the server.

Or to run netcat in Docker as a server (in listen mode):

$ docker run -it --rm -p 9000:9000 konjak/netcat -l 9000

then connect to it via the Docker IP address:

$ nc 192.168.99.100 9000

or

docker run -it --rm konjak/netcat 192.168.99.100 9000

See the Host file for DNS resolution section, above, for steps to get your Docker IP address.

Just like the netcat client, when the netcat server has received a connection, you can type a message and press Enter to send it to the client.

About

Examples and template configurations for Kaazing WebSocket Gateway

Resources

Stars

1 star

Watchers

30 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Kaazing Gateway Docker Tutorials

This repository provides examples of different Kaazing Gateway deployment scenarios. For ease of use and portability, these scenarios are provided using Docker.

Deployment Scenarios

Each subdirectory contains a scenario and instructions on how to run the setup locally.

Requirements

Docker and Docker Compose

These tutorials require that you have both Docker and Docker Compose installed. If you are unfamiliar with Docker there is a learning curve at the beginning, but we highly recommend getting familiar with it. Docker isn't just for production deployment. Even if you're just evaluating, prototyping, or developing, Docker is an excellent convenience that will make your life easier. It is well worth getting to know it.

Docker has some excellent documentation and tutorials. Here are some links to get you started:

Host file for DNS resolution

Some of these tutorials may require hostnames that resolve to the Docker host machine. To enable this resolution, add an entry in your hosts file that points to your Docker host's IP address for the given hostname, such as example.com.

If you are using Docker Machine, you can get the IP address with this command: docker-machine ip. If you are using Kitematic, go to Settings then Ports. For other examples, see 10 Examples of how to get Docker Container IP Address.

In many cases, the IP address defaults to 192.168.99.100.

Netcat

Some of these tutorials may use netcat to simulate a client or server.

If you are running on Windows, or don't have netcat installed, everywhere you see the nc command, replace it with a Docker image that contains netcat.

For example when using netcat as a client, if you see:

$ nc 192.168.99.100 5551

then replace it with:

$ docker run -it --rm konjak/netcat 192.168.99.100 5551

Once the netcat client is connected, you can type a message and press Enter to send it to the server.

Or to run netcat in Docker as a server (in listen mode):

$ docker run -it --rm -p 9000:9000 konjak/netcat -l 9000

then connect to it via the Docker IP address:

$ nc 192.168.99.100 9000

or

docker run -it --rm konjak/netcat 192.168.99.100 9000

See the Host file for DNS resolution section, above, for steps to get your Docker IP address.

Just like the netcat client, when the netcat server has received a connection, you can type a message and press Enter to send it to the client.

About

Examples and template configurations for Kaazing WebSocket Gateway

Resources

Stars

1 star

Watchers

30 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

Kaazing Gateway Docker Tutorials

This repository provides examples of different Kaazing Gateway deployment scenarios. For ease of use and portability, these scenarios are provided using Docker.

Deployment Scenarios

Each subdirectory contains a scenario and instructions on how to run the setup locally.

Requirements

Docker and Docker Compose

These tutorials require that you have both Docker and Docker Compose installed. If you are unfamiliar with Docker there is a learning curve at the beginning, but we highly recommend getting familiar with it. Docker isn't just for production deployment. Even if you're just evaluating, prototyping, or developing, Docker is an excellent convenience that will make your life easier. It is well worth getting to know it.

Docker has some excellent documentation and tutorials. Here are some links to get you started:

Host file for DNS resolution

Some of these tutorials may require hostnames that resolve to the Docker host machine. To enable this resolution, add an entry in your hosts file that points to your Docker host's IP address for the given hostname, such as example.com.

If you are using Docker Machine, you can get the IP address with this command: docker-machine ip. If you are using Kitematic, go to Settings then Ports. For other examples, see 10 Examples of how to get Docker Container IP Address.

In many cases, the IP address defaults to 192.168.99.100.

Netcat

Some of these tutorials may use netcat to simulate a client or server.

If you are running on Windows, or don't have netcat installed, everywhere you see the nc command, replace it with a Docker image that contains netcat.

For example when using netcat as a client, if you see:

$ nc 192.168.99.100 5551

then replace it with:

$ docker run -it --rm konjak/netcat 192.168.99.100 5551

Once the netcat client is connected, you can type a message and press Enter to send it to the server.

Or to run netcat in Docker as a server (in listen mode):

$ docker run -it --rm -p 9000:9000 konjak/netcat -l 9000

then connect to it via the Docker IP address:

$ nc 192.168.99.100 9000

or

docker run -it --rm konjak/netcat 192.168.99.100 9000

See the Host file for DNS resolution section, above, for steps to get your Docker IP address.

Just like the netcat client, when the netcat server has received a connection, you can type a message and press Enter to send it to the client.

About

Examples and template configurations for Kaazing WebSocket Gateway

Resources

Stars

1 star

Watchers

30 watching

Forks

Releases

Packages

Contributors

Languages