Pre-requisites

  1. If you are using AWS EC2 Linux, install Webmin (You can use the steps described here to install Webmin https://wilddiary.com/install-webmin-on-aws-ec2-server/)
  2. Install Docker (You can use the steps described here to install Docker)
    https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04
  3. If you are running Docker in EC2, make sure the VM running in EC2 has access to all required ports i.e. EC2 10000(webmin), 56244(NoCodeBDD), 4444(Chrome docker) and 443(HTTPS)

Steps to Run NoCodeBDD in Docker running in EC2

  1. Create a folder called “NoCodeBDD” in EC2 under /opt
  2. Copy following files to EC2 under /opt/NoCodeBDD
  3. In Webmin, under tools select command shell and run the following commands in that order:
docker build --no-cache -t nocodebdd:latest /opt/NoCodeBDD

docker run --name nocodebdd -m 4096m -v /opt/NoCodeBDD/data:/root/Documents/NoCodeBDD -p 56244:56244 -d nocodebdd

docker run -d -p 4444:4444 --shm-size="2g" -e JAVA_OPTS="-Dwebdriver.chrome.whitelistedIps=Your_EC2_public_IP" selenium/standalone-chrome:4.0.0-20211013

Both Chrome Docker and NoCodeBDD should have started now after running the above 3 commands. You can check this by running the command docker ps -a

4. You should be able to access NoCodeBDD by going to http://Your_EC2_Public_IP:56244/#/ then go to Settings and click on “+ Remote Browser Config” and enter a value under “URL Name” and in url enter the followinghttp://Your-EC2-Public-IP:4444/wd/hub

5. Now NoCodeBDD should be running under http://Your_EC2_Public_IP:56244/#/

Steps to Run Multiple NoCodeBDD Docker instances in EC2

  1. Create a folder a new folder eg NoCodeBDDProject2 in EC2 under /opt
  2. Copy following files to EC2 under /opt/NoCodeBDDProject2
  3. In Webmin, under tools select command shell and run the following commands in that order:
  4. Change <dockername> with required name
  5. Change <NewFolderCreated> with the folder created (eg: NoCodeBDDProject2)
  6. Change <Port to Run NoCodeBDD> to a unique port number. Port number should be between 1024 to 49151. (eg: 50000)

docker build --no-cache -t <dockername>:latest /opt/<NewFolderCreated>

docker run --name <dockername> -m 4096m -v /opt/<NewFolderCreated>/data:/root/Documents/NoCodeBDD -p <Port to Run NoCodeBDD>:56244 -d <dockername>

Example Script:

docker build --no-cache -t nocodebddp2:latest /opt/NoCodeBDDProject2

docker run --name nocodebddp2 -m 4096m -v /opt/NoCodeBDDProject2/data:/root/Documents/NoCodeBDD -p 50000:56244 -d nocodebddp2

One thought on “Running NoCodeBDD in Docker

Leave a Reply