How to
How to : basic
All those command are compact and useful docker shortcuts !
Those aliases overrides standard docker commands for container and images.
| Description | IMAGE | CONTAINER | |
|---|---|---|---|
| edjangerattach | "docker attach" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerbuild | "docker build" with parameters read from local edjanger.properties. | X | |
| edjangeredjangercommit | "docker commit" with parameters read from local edjanger.properties. | X | X |
| edjangeredjangercopy | "docker copy" with parameters read from local edjanger.properties. | X | |
| edjangeredjangercreate | "docker create" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerdiff | "docker diff" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerevents | "docker events" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerexec | "docker exec" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerexport | "docker port" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerhistory | "docker history" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerimages | "docker images" with parameters read from local edjanger.properties. | X | X |
| edjangeredjangerimport | "docker import" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerinspect | "docker inspect" with parameters read from local edjanger.properties. | X | X |
| edjangeredjangerkill | "docker kill" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerlogs | "docker logs" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerpause | "docker pause" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerps | "docker ps" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerpsa | "docker ps -a" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerrename | "docker rename" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerrestart | "docker restart" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerm | "docker rm" with parameters read from local edjanger.properties. | X | |
| edjangeredjangermi | "docker rmi" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerun | "docker run -d" with parameters read from local edjanger.properties. | X | |
| edjangeredjangeruni | "docker run -it" with parameters read from local edjanger.properties. | X | |
| edjangeredockestart | "docker start" with parameters read from local edjanger.properties. | X | |
| edjangeredockestats | "docker stats" with parameters read from local edjanger.properties. | X | |
| edjangeredockestop | "docker stop" with parameters read from local edjanger.properties. | X | |
| edjangeredjangertag | "docker tag" with parameters read from local edjanger.properties. | X | |
| edjangeredjangertop | "docker top" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerunpause | "docker unpause" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerupdate | "docker update" with parameters read from local edjanger.properties. | X | |
| edjangeredjangerwait | "docker wait" with parameters read from local edjanger.properties. | X |
How to : advanced
| Description | |
|---|---|
| edjangeredjangerclean | clean all images with none attribute (run docker rmi with "none" filter). |
| edjangeredjangerports | "docker ports" on all running container. |
| edjangeredjangermexiteds | docker rm with list of container with exited status. |
| edjangeredjangerrmorphanedvolumes | remove all orphaned volumes. |
How to : useful
| Description | |
|---|---|
| edjangeredjangerabout | about script for edjanger. |
| edjangeredjangeralias | print edjanger aliases. |
| edjangeredjangercheck | check missing parameters in edjanger.properties. |
| edjangeredjangercompose | create docker-compose.yaml from all edjanger.propeorties in current path. |
| edjangeredjangerhelp | help for all commands. |
| edjangeredjangerinit | initialize an edjanger project. |
| edjangeredjangerportdesc | description of port. |
| edjangeredjangertemplate | generate edjanger.poperties from edjanger.template. |
| edjangeredjangerunalias | help script for edjanger command. |
| edjangeredjangerupgrade | upgrade edjanger. |
Check missing parameters in edjanger.properties
Remark : even when parameters are missing in edjanger.properties, they are initialized empty.
How to : compose
From an existing edjanger root path project structure, call edcokercompose. Script will parse all edjanger.properties in subfolders and create docker-compose.yaml at upper path.
edjangercompose
vi docker-compose.yaml
How to : template
Prerequisities : - gettext (for envsubst) - zip/unzip
- Deploy example "demo_template" with one of following commands:
edjangerinit --template=demo_template
or
edjangertemplate --init=demo_template
-
Deploy 2 apache web sever (web1 and web2) with specific ports and shared volumes for a "production" environement.
bash ./deploy_run.sh --properties=production 5 -
Deploy 2 apache web server (web1 and web2) with specific ports and shared volumes for an "integration" environement.
bash ./deploy_run.sh --properties=integration 5 -
Instructions From an existing edjanger root path project structure, do following
- rename all edjanger.properties to edjanger.template
- define variable for element to be replaced with variable value from configuration file
- create configuration files (
.properties) containing SHELL-FORMAT variable - in each folder containing edjanger.properties (each configuration file must hase same name e.g.: production.properties) or
- only in root folder (e.g.: production.properties)
- call edjangertemplate with name of configuration file
edjangertemplate --properties=<name>.properties
Example of edjangertemplate invocation
edjangertemplate --properties=production.properties
Example of production.properties content
#!/bin/bash
export HTTPD_PORT_80=80
export HTTPD_PORT_443=443
Example of edjanger.template content
#exposed_ports:exposed port
exposed_ports="-p ${HTTPD_PORT_80}:80 -p ${HTTPD_PORT_443}:443"
Script will find all edjanger.template and replace variables from root or folder(s) configuration(s) file(s) to produce edjanger.properties files.
Example of edjanger.properties produced
#exposed_ports:exposed port
exposed_ports="-p 80:80 -p 443:443"
Example of template workflow:
Initialize an empty project and configure it.
Configure properties and run template for jenkins
Build and run the jenkins container
Save the jenkins template
See it in the template list
Test initialisation with a demo_jenkins template
How to : crontab
Configure automatic container restart at boot
To configure automatic restart of container at boot, configure edjanger.properties files : - activate cron_start=true to start existing container at boot - activate cron_build=true to build and start a new container at boot
Configure crontab with following parameters
crontab -e
@reboot {edjangerpath}/cron_build_start.sh {edjanger properties path}
@reboot {edjangerpath}/cron_start_only.sh {edjanger properties path}
Example:
crontab -e
@reboot /opt/edjanger/scripts/cron_build_start.sh /root/workspace/docker
@reboot /opt/edjanger/scripts/cron_start_only.sh /root/workspace/docker
How to : contribute
Download sources from github :
cd /opt
git clone edjanger https://github.com/pamtrak06/edjanger.git
cd edjanger
git clone -b gh-pages https://github.com/pamtrak06/edjanger.git
cd ..
To be in user mode :
./edjangerinstall.sh --alias
./edjangerinstall.sh -a
To be in contribution mode (allow to push to github) :
./edjangerinstall.sh --contribution
./edjangerinstall.sh -c
To build web site
cd /opt/edjanger/gh-pages/mkdocs
./build.sh
./serve.sh
Open following :
http://127.0.0.1:8000