Docker Installation
Work in Progress
This installation is for a future release.
General Installation Page
https://docs.docker.com/engine/install/
Centos Docker Installation
See: https://docs.docker.com/engine/install/centos/
LocalyzerQA Docker Installation
Prereq
- Make sure you have the logs and config locations setup, for example:
centos > pwd /home/centos/localyzerqa centos > ls -l total 0 drwxrwxr-x. 2 centos centos 6 Jun 16 21:32 config drwxrwxr-x. 2 centos centos 6 Jun 16 21:32 log drwxrwxr-x. 2 centos centos 6 Jun 16 21:32 logs
- Make sure you have the configuration file for the application (from Lingoport)
centos > ls -l localyzerqa/config/ total 4 -rw-rw-r--. 1 centos centos 1445 Jun 16 21:39 LocalyzerQAConfig.groovy
You need to set
String dbuser = 'root' String dbpass = 'my-secret-pw' grails.serverURL = 'http://cet11.lingoport.io/localyzerqa' String dbname = "lreviewer"
url="jdbc:mysql://mysqlserver:3306/" + dbname + "?autoReconnect=true&useUnicode=yes&permitMysqlScheme"
- Check the local images
docker ps
You may have previous LocalyzerQA images. You may want to remove them.
Create a network
for the communication between the Web app container and MySQL Container, a network is created. It will be used when deploying the LocalyzerQA container to talk to MySQL:
docker network create mysqlnet docker network list
Run a mysql container
Use the network when running the LocalyzerQA container:
docker run --network-alias mysqlserver --network mysqlnet -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_DATABASE=lreviewer mysql:5.7
- mysqlnet: The network set up in the step above
- mysqlserver: Make sure it matches that in LocalyzerQAConfig.groovy
- my-secret-pw: Make sure it matches that in LocalyzerQAConfig.groovy
- lreviewer: The database used in MySQL for LocalyzerQA.
Run the LocalyzerQA Tomcat Application Container
docker run -dp 8085:8080 --network mysqlnet -v "/home/centos/localyzerqa/log":/usr/local/tomcat/log -v "/home/centos/localyzerqa/logs":/usr/local/tomcat/logs -v "/home/centos/localyzerqa/config":/usr/local/tomcat/lingoport ljilingoport/localyzerqadev docker ps
Use mysql on disk
Open port 8085
Login to AWS EC2 Edit Security Group to add Dockerdev group
Allow access database remotely
mysql -u root -p grant all privileges on *.* to root@'%' identified by 'ROOT_PASSWORD'; flush privileges; vi /etc/my.cnf
Add/Modify
bind-address = 0.0.0.0 sudo systemctl restart mysqld
Run the container
docker run -dp 8085:8080 -v "/home/centos/localyzerqa/log":/usr/local/tomcat/log -v "/home/centos/localyzerqa/logs":/usr/local/tomcat/logs -v "/home/centos/localyzerqa/config":/usr/local/tomcat/lingoport ljilingoport/localyzerqadev docker ps