...
~$ sudo touch etc/apt/apt.conf.d/proxy.conf
~$ sudo sh -c 'echo "Acquire::http::proxy \"http://<PROXY_IP>:<PROXY_PORT>/\";" >> /etc/apt/apt.conf.d/proxy.conf'
~$ sudo sh -c 'echo "Acquire::https::proxy \"https://<PROXY_IP>:<PROXY_PORT>/\";" >> /etc/apt/apt.conf.d/proxy.conf'
~$ sudo sh -c 'echo "Acquire::ftp::proxy \"ftp://<PROXY_IP>:<PROXY_PORT>/\";" >> /etc/apt/apt.conf.d/proxy.conf'
~$ sudo apt-get update
~$ export http_proxy=http://<PROXY_IP>:<PROXY_PORT>
~$ export https_proxy=http://<PROXY_IP>:<PROXY_PORT>
...
CONTAINER_NAME, name of the container, default value is akraino-validation-mariadb
MARIADB_ROOT_PASSWORD, the desired mariadb root user password, this variable is required
MARIADB_AKRAINO_PASSWORD, the desired mariadb akraino user password, this variable is required
UI_ADMIN_PASSWORD, the desired Blueprint Validation UI password for the admin user, this variable is required
UI_AKRAINO_PASSWORD, the desired Blueprint Validation UI password for the akraino user, this variable is required
REGISTRY, registry of the mariadb image, default value is akraino
NAME, name of the mariadb image, default value is validation
TAG_PRE, first part of the image version, default value is mariadb
TAG_VER, last part of the image version, default value is latest
MARIADB_HOST_PORT, port on which mariadb is exposed on host, default value is 3307
Currently, two users are supported for by the UI, namely admin (full privileges) and akraino (limited privileges). Their passwords must be defined in the database.
In order to build and deploy the image using only the required parameters, the below instructions should be followed:
The mariadb root password, mariadb akraino user password (currently the UI connects to the database using root privilegesthe akraino user), the UI admin password and the UI akraino password should be configured using the appropriate variables and the following commands should be executed:
~$ cd validation/ui
~$ mvn docker:build -Ddocker.filter=akraino/validation:dev-mariadb-latest
~$ cd ../docker/mariadb
~$ ./deploy.sh TAG_PRE=dev-mariadb MARIADB_ROOT_PASSWORD=<root<mariadb root user password> MARIADB_AKRAINO_PASSWORD=<mariadb akraino user password> UI_ADMIN_PASSWORD=<UI admin user password> UI_AKRAINO_PASSWORD=<UI akraino user password>
~$ mysql -p<MARIADB_ROOTAKRAINO_PASSWORD> -urootuakraino -h <IP of the mariadb container> < ../../ui/db-scripts/examples/initialize_db_example.sql
...
~$ docker volume rm akraino-validation-mariadb
~$ cd validation/docker/mariadb
~$ ./deploy.sh TAG_PRE=dev-mariadb MARIADB_ROOT_PASSWORD=<root user password> MARIADB_AKRAINO_PASSWORD=<mariadb akraino user password> UI_ADMIN_PASSWORD=<UI admin user password> UI_AKRAINO_PASSWORD=<UI akraino user password>
~$ mysql -p<MARIADB_ROOTAKRAINO_PASSWORD> -urootuakraino -h <IP of the mariadb container> < ../../ui/db-scripts/examples/initialize_db_example.sql
...
Then, the following command should be executed:
~$ mysql ~$ mysql -p<MARIADB_ROOTAKRAINO_PASSWORD> -uroot uakraino -h <IP of the mariadb container> < ./dbscript.sql
...
Then, the following command should be executed:
~$ mysql ~$ mysql -p<MARIADB_ROOTAKRAINO_PASSWORD> -uroot uakraino -h <IP of the mariadb container> < ./dbscript.sql
...
Then, the following command should be executed:
~$ mysql ~$ mysql -p<MARIADB_ROOTAKRAINO_PASSWORD> -uroot uakraino -h <IP of the mariadb container> < ./dbscript.sql
...
Then, the following command should be executed:
~$ mysql ~$ mysql -p<MARIADB_ROOTAKRAINO_PASSWORD> -uroot uakraino -h <IP of the mariadb container> < ./dbscript.sql
...
CONTAINER_NAME, the name of the contaner, default value is akraino-validation-ui
DB_IP_PORT, the IP and port of the maridb instance, this variable is required
MARIADB_ROOTAKRAINO_PASSWORD, the mariadb root akraino user password, this variable is required
REGISTRY, the registry of the mariadb image, default value is akraino
NAME, the name of the mariadb image, default value is validation
TAG_PRE, the first part of the image version, default value is ui
TAG_VER, the last part of the image version, default value is latest
JENKINS_URL, the URL of the Jenkins instance (http or https must be defined), this variable is required
JENKINS_USERNAME, the Jenkins user name, this variable is required
JENKINS_USER_PASSWORD, the Jenkins user password, this variable is required
JENKINS_JOB_NAME, the name of Jenkins job capable of executing the blueprint validation tests, this variable is required
NEXUS_PROXY, the needed proxy in order for the Nexus server to be reachable, default value is none
JENKINS_PROXY, the needed proxy in order for the Jenkins server to be reachable, default value is none
In order to build the image using only the required parameters, the following data is needed:
- The mariadb root akraino user password (look at the Database subsection)
- The IP and port of the mariadb
- The Jenkins url
- The Jenkins username and password
- The name of Jenkins Job
...
~$ cd validation/ui
~$ mvn docker:build -Ddocker.filter=akraino/validation:dev-ui-latest
~$ cd ../docker/ui
~$ ./deploy.sh TAG_PRE=dev-ui DB_IP_PORT=<IP and port of the mariadb> MARIADB_ROOTAKRAINO_PASSWORD=<mariadb root akraino password> JENKINS_URL=<http://jenkinsIP:port> JENKINS_USERNAME=<Jenkins user> JENKINS_USER_PASSWORD=<Jenkins password> JENKINS_JOB_NAME=<Jenkins job name>
...