Skip to content

Want to run Microclimate on Docker Toolbox (VirtualBox VM based) for Window system #1

@shu1saitohibm

Description

@shu1saitohibm

[Background for the request]
as Microclimate version 18.04, Local install option for Windows system currently supports only
"Docker for Windows" (Hyper-V based) and Windows 10 / Windows Server 2016.

If Microclimate provides support for Local install option on Docker Toolbox (VirtualBox based), the following developers can also use the Microclimate.

  • Windows 7 users
  • Windows 10 users who does not want Hyber-V enabled (to avoid conflict with other virtualization mechanism such as VMware / VirtualBox).

[Changes need to implement]
The major difference between Docker Toolbox and Docker for Windows is, the Docker Toolbox runs Linux VM on the host machine with the local IP address (192.168.99.100 by default setting) and docker container network will bound on the IP, whereas the Docker for Windows binds docker container network directly onto the host Windows system.
Since the Microclimate statically binds the containers on specific IP address "127.0.0.1", Docker Toolbox users cannot access the Microclimate portal application even if the user tries to the app using the URL http://192.168.99.100:9090/.

To make work the Microclimate on Docker Toolbox box, following change will be required on the Microclimate code.

  • remove "127.0.0.1" host restriction for ports definition of "microclimate-portal" container in the "docker-compose.yaml"
    e.g.
    "127.0.0.1:9090:9090" -> "9090:9090"

  • remove "127.0.0.1" host restriction for "microclimate-theia", "microclimate-file-watcher" containers, which the "microclimate-portal" container starts at runtime. (within "containers.js" nodejs file in microclimate-portal).
    e.g.
    newContainer.PortBindings[${editorPort}/tcp] = [{
    HostIp: 127.0.0.1, -> '0.0.0.0'

  • add option to specify the host IP address of docker container in "cli/mcdev.ps1".
    e,.g. "http://localhost:$portal_port" -> "http://${portal_host}:${portal_port}"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions