/wlc-virtual-infrastructure

Virtual infrastructure for We Love Coding

Primary LanguageRuby

Overview

TODO's

Usage

  • Install VirtualBox
  • Install Vagrant
  • Open Shell
  • Navigate to Folder vm-chef-server
  • Enter vagrant up and wait...
    • This command will configure and boot the host VM
  • Enter vagrant ssh to ssh into the VM/Container

Machines

  • vm-chef-server - The host VM containing the Open Source Chef-Server.
    • container-workstation-local - Workstation to work locally on Chef recipes and e.g. upload it to the local Chef-Server.
  • vm-dev-host - The host VM containing all Docker Containers for the Development Environment.
    • container-jenkins - The container for Jenkins CI.
  • vm-wlc-test - The host VM containing all Docker Containers for the We Love Coding Test Environment.
    • container-wlc-glassfish - Under Development The Container for the We Love Coding Test GlassFish.
    • container-wlc-mysql - Under Development The Container for the We Love Coding Test MySQL.
  • vm-wlc-production - The host VM containing all Docker Containers for the We Love Coding Production Environment.
    • container-wlc-glassfish - Under Development The Container for the We Love Coding Production GlassFish.
    • container-wlc-mysql - Under Development The Container for the We Love Coding Production MySQL.

Network

  • Virtual Machine: vm-chef-server

    • Private-IP: 192.168.1.2
    • Services:
      • Chef-Server
    • Forworded Ports:
    **Guest** **Host** **Description**
    9191 9191 Chef-Server UI HTTPS
    - Containers: * Hostname: `container-workstation-local` - Private-IP: `192.168.1.3` - Ports: - None
  • Virtual Machine: vm-development

    • Private-IP: 192.168.2.2
    • Services:
      • Jenkins
    • Forworded Ports:
    **Guest** **Host** **Description**
    8080 8080 Jenkins UI HTTP
    - Containers: * Hostname: `container-jenkins` - Type: `Docker Container` - Private-IP: `192.168.2.5` - Ports:
    **Port** **Description**
    8080 Jenkins UI HTTP
  • Virtual Machine: vm-wlc-production

    • Private-IP: 192.168.3.2
    • Services:
      • GlassFish
      • MySQL
    • Forworded Ports:
    **Guest** **Host** **Description**
    8080 8080 GlassFish App HTTP
    8181 8181 GlassFish App HTTPS
    4848 4848 GlassFish Admin HTTP
    4848 4848 GlassFish Admin HTTPS
    - Containers: * Hostname: `container-glassfish` - Type: `Docker Container` - Private-IP: `192.168.3.3` - Ports:
    **Port** **Description**
    8080 GlassFish App HTTP
    8181 GlassFish App HTTPS
    4848 GlassFish Admin HTTP
    4848 GlassFish Admin HTTPS
    * Hostname: `container-mysql` - Type: `Docker Container` - Private-IP: `192.168.3.4` - Ports:
    **Port** **Description**
    3306 MySQL data
  • Virtual Machine: vm-wlc-test

    • Private-IP: 192.168.4.2
    • Services:
      • GlassFish
      • MySQL
    • Forworded Ports:
    **Guest** **Host** **Description**
    8080 8080 GlassFish App HTTP
    8181 8181 GlassFish App HTTPS
    4848 4848 GlassFish Admin HTTP
    4848 4848 GlassFish Admin HTTPS
    - Containers: * Hostname: `container-glassfish` - Type: `Docker Container` - Private-IP: `192.168.4.3` - Ports:
    **Port** **Description**
    8080 GlassFish App HTTP
    8181 GlassFish App HTTPS
    4848 GlassFish Admin HTTP
    4848 GlassFish Admin HTTPS
    * Hostname: `container-mysql` - Type: `Docker Container` - Private-IP: `192.168.4.4` - Ports:
    **Port** **Description**
    3306 MySQL data

Troubleshotting

git status says detached HEAD - use git checkout master updating submodules - use git submodule update --recursive git yields No submodule mapping found in .gitmodule for a path REPO_NAME - find repo with git ls-files --stage | grep 160000 and delete with git rm --cached REPO_NAME

Further Reading