-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'development' into release
- Loading branch information
Showing
49 changed files
with
716 additions
and
205 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,32 +1,59 @@ | ||
# This makefile is the user interface to jobs that the user may wish to carry | ||
# out using virtual machines. | ||
|
||
## Container targets | ||
full-container: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=container container_name=full playbook=provision_virtualmicromagnetics_full.yml hookbook=hook_container.yml extra_resources_dir=guest_resources/" | ||
|
||
lite-container: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=container container_name=lite playbook=provision_virtualmicromagnetics_lite.yml hookbook=hook_container.yml extra_resources_dir=guest_resources/" | ||
|
||
oommf-container: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=container container_name=oommf playbook=provision_virtualmicromagnetics_oommf.yml hookbook=hook_container.yml extra_resources_dir=guest_resources/" | ||
|
||
magpar-container: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=container container_name=magpar playbook=provision_virtualmicromagnetics_magpar.yml hookbook=hook_container.yml extra_resources_dir=guest_resources/" | ||
|
||
nmag-container: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=container container_name=nmag playbook=provision_virtualmicromagnetics_nmag.yml hookbook=hook_container.yml extra_resources_dir=guest_resources/" | ||
|
||
fidimag-container: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=container container_name=fidimag playbook=provision_virtualmicromagnetics_fidimag.yml hookbook=hook_container.yml extra_resources_dir=guest_resources/" | ||
|
||
## VM targets | ||
full-vm: full | ||
lite-vm: lite | ||
oommf-vm: oommf | ||
magpar-vm: magpar | ||
nmag-vm: nmag | ||
fidimag-vm: fidimag | ||
|
||
# This target builds a virtual hard disk file containing various open | ||
# micromagnetics simulation technologies and other convenient packages. | ||
full: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="vm_name=virtualmicromagnetics-full playbook=provision_virtualmicromagnetics_full.yml hookbook=hook.yml extra_resources_dir=guest_resources/" | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=vm vm_name=virtualmicromagnetics-full playbook=provision_virtualmicromagnetics_full.yml hookbook=hook_vm.yml extra_resources_dir=guest_resources/" | ||
|
||
# This target builds a virtual hard disk file containing various open | ||
# micromagnetics simulation technologies. | ||
lite: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="vm_name=virtualmicromagnetics-lite playbook=provision_virtualmicromagnetics_lite.yml hookbook=hook.yml extra_resources_dir=guest_resources/" | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=vm vm_name=virtualmicromagnetics-lite playbook=provision_virtualmicromagnetics_lite.yml hookbook=hook_vm.yml extra_resources_dir=guest_resources/" | ||
|
||
# This target builds a virtual hard disk file containing an OOMMF | ||
# installation. | ||
oommf: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="vm_name=virtualmicromagnetics-oommf playbook=provision_virtualmicromagnetics_oommf.yml hookbook=hook.yml extra_resources_dir=guest_resources/" | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=vm vm_name=virtualmicromagnetics-oommf playbook=provision_virtualmicromagnetics_oommf.yml hookbook=hook_vm.yml extra_resources_dir=guest_resources/" | ||
|
||
# This target builds a virtual hard disk file containing a Magpar | ||
# installation. | ||
magpar: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="vm_name=virtualmicromagnetics-magpar playbook=provision_virtualmicromagnetics_magpar.yml hookbook=hook.yml extra_resources_dir=guest_resources/" | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=vm vm_name=virtualmicromagnetics-magpar playbook=provision_virtualmicromagnetics_magpar.yml hookbook=hook_vm.yml extra_resources_dir=guest_resources/" | ||
|
||
# This target builds a virtual hard disk file containing a Nmag | ||
# installation. | ||
nmag: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="vm_name=virtualmicromagnetics-nmag playbook=provision_virtualmicromagnetics_nmag.yml hookbook=hook.yml extra_resources_dir=guest_resources/" | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=vm vm_name=virtualmicromagnetics-nmag playbook=provision_virtualmicromagnetics_nmag.yml hookbook=hook_vm.yml extra_resources_dir=guest_resources/" | ||
|
||
# This target builds a virtual hard disk file containing a fidimag | ||
# installation. | ||
fidimag: | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="vm_name=virtualmicromagnetics-fidimag playbook=provision_virtualmicromagnetics_fidimag.yml hookbook=hook.yml extra_resources_dir=guest_resources/" | ||
ansible-playbook master.yml -c local -i localhost, -v -k --extra-vars="type=vm vm_name=virtualmicromagnetics-fidimag playbook=provision_virtualmicromagnetics_fidimag.yml hookbook=hook_vm.yml extra_resources_dir=guest_resources/" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
.. _container-software: | ||
|
||
Containers and Related Software | ||
=============================== | ||
|
||
In :ref:`getting-started-user`, we created a :term:`container` in addition to a | ||
:term:`virtual machine` based on the Full :term:`Virtual Micromagnetics` | ||
environment. This page talks about containers and how the | ||
:term:`provider`\-:term:`manager`\-:term:`provisioner` model applies to | ||
container creation. We recommend reading :ref:`vm-software`, if you have not | ||
already. | ||
|
||
Containers and Images | ||
--------------------- | ||
|
||
A :term:`container` is a virtualisation mechanism similar to a :term:`virtual | ||
machine`\, in that it allows users to run software in a controlled environment | ||
with a cap on available computing resources (like memory). Where a virtual | ||
machine contains the entire software stack above and including the operating | ||
system, a container uses the operating system and kernel of the host machine to | ||
produce its environment. Containers are created from :term:`image`\s (container | ||
templates, analogous to :term:`box file`\s) to run a single process, and are | ||
usually destroyed once that process has been completed. | ||
|
||
Images can be distributed to other users so that they can run :term:`Virtual | ||
Micromagnetics` environments from a container. | ||
|
||
Software Related to Containers | ||
------------------------------ | ||
|
||
As with :term:`virtual machine`\s, :term:`container`\s require supporting | ||
software to function. The | ||
:term:`provider`\-:term:`manager`\-:term:`provisioner` model outlined for | ||
virtual machines in :ref:`vm-software` also applies to containers as follows: | ||
|
||
- Provisioner: Ansible is also used to provision containers. In :term:`Virtual | ||
Micromagnetics`, scripts to provision containers and virtual machines with | ||
software are very similar, encouraging code reuse. | ||
|
||
- Manager: Vagrant is used to manage containers in this project in a similar | ||
way to how virtual machines are managed. An exception is that Vagrant can | ||
only be used to host :term:`box file`\s, meaning another hosting method is | ||
needed for :term:`images`. | ||
|
||
- Provider: Docker is used in Virtual Micromagnetics to create containers for | ||
simulation (as the user) and for provisioning (as the poweruser). Docker | ||
also supports online hosting of images; this is used in Virtual | ||
Micromagnetics as a distribution method. | ||
|
||
Summary | ||
------- | ||
|
||
:term:`Container`\s are another virtualisation mechanism, like :term:`virtual | ||
machines`. Containers virtualise fewer elements of the software stack so they | ||
are smaller, but consequently impose more requirements on the :term:`host | ||
machine`. Like virtual machines, containers can be provisioned, managed, and | ||
distributed. | ||
|
||
You are now ready to :ref:`get started as a | ||
poweruser<getting-started-poweruser>`, which explains how to create custom | ||
environments containing software you choose, as well as instructions for adding | ||
new software or configuring your own virtual environment. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.