Line 1: |
Line 1: |
| {{WIP box}} | | {{WIP box}} |
| + | {{Note box|Various configuration entries may be deprecated}} |
| + | |
| __TOC__ | | __TOC__ |
| [[File:Docker_design_conceptv0.1.png]] | | [[File:Docker_design_conceptv0.1.png]] |
Line 25: |
Line 27: |
| a CPAN perl library for managing images and containers | | a CPAN perl library for managing images and containers |
| http://search.cpan.org/~alambike/Eixo-Docker-1.103/lib/Eixo/Docker.pod | | http://search.cpan.org/~alambike/Eixo-Docker-1.103/lib/Eixo/Docker.pod |
| + | |
| + | https://github.com/alambike/eixo-docker |
| | | |
| The Eixo library interacts with Docker API via a TCP socket. By default Docker starts without a TCP socket attached, so we have to add it to the Docker service arguments in /etc/sysconfig/docker. The default port via which the Docker API communicates is 4243 but it can be any port. Below is an example /etc/sysconfig/docker file: | | The Eixo library interacts with Docker API via a TCP socket. By default Docker starts without a TCP socket attached, so we have to add it to the Docker service arguments in /etc/sysconfig/docker. The default port via which the Docker API communicates is 4243 but it can be any port. Below is an example /etc/sysconfig/docker file: |
Line 33: |
Line 37: |
| # to the arguments list passed to docker -d | | # to the arguments list passed to docker -d |
| | | |
− | other_args="-g /home/e-smith/files/docker-H 127.0.0.1:4243 -d" | + | other_args="-g /home/e-smith/files/docker -H 127.0.0.1:4243 -d" |
| | | |
| ==Options== | | ==Options== |
Line 49: |
Line 53: |
| ===B. Docker options=== | | ===B. Docker options=== |
| * TBA | | * TBA |
| + | * Docker cluster?? (Multiple SME Servers load balancing docker containers) |
| + | |
| | | |
| ===C. Image options=== | | ===C. Image options=== |
| * Linked containers | | * Linked containers |
| + | |
| + | To inspect an image and with what (networking) options it was constructed, one can inspect the image by: |
| + | docker inspect [imagename] |
| | | |
| | | |
| ==SME Databases== | | ==SME Databases== |
| ===Container options=== | | ===Container options=== |
| + | Container options can be passed to the container at 'boot' time. These options can include the following aspects: |
| + | * network (ports, port mapping) |
| + | * 'cpu' (load) |
| + | * memory allocated (size) |
| + | * Storage (mount paths, both inside container and (remote) host) |
| + | * Domain names (FQDN (sub)domains, Web server Aliases) |
| + | * Links to other containers (container wordpress automatically starts container MySQL) |
| + | |
| + | Unlike containers, images themselves do not carry this information, but only the exposed (open) ports. |
| + | |
| + | Hence the usage of SME Server db system to store preferred options per container. |
| + | |
| + | |
| Syntax: | | Syntax: |
| db docker_containers [name] | | db docker_containers [name] |
Line 138: |
Line 160: |
| | | |
| '''Install docker to your sme, be aware that you have to do it on a SME9 64 bit''' | | '''Install docker to your sme, be aware that you have to do it on a SME9 64 bit''' |
| + | original script : https://github.com/docker/docker/blob/master/contrib/mkimage-yum.sh |
| | | |
| Create your repository file and save it to /root/repo_file | | Create your repository file and save it to /root/repo_file |