** THIS DOCKER CONFIGURATION IS INTENDED FOR DEVELOPMENT & DEVELOPMENT PURPOSES ONLY**
The main difference between the Dev and Test dockers is that the Dev has NPM, Node, composer, and Cypress installed and running inside the docker.
These are the steps needed to develop ChurchCRM with Docker
- Docker
- Docker Compose
- GIT
- Node and NPM
- Clone ChurchCRM Repo
git clone [email protected]:ChurchCRM/CRM.git
cd
into the project directory- build docker
npm run docker-dev-build
- start the containers
npm run docker-dev-start
. Note: Containers are started in the background - ssh into the web container
npm run docker-dev-login-web
- cd into src code
cd /home/ChurchCRM
- build church crm web and php code
npm run deploy
- make the application log folder writable:
chmod a+rwx src/logs
- stop docker
npm run docker-dev-stop
. Note: Run this command from your host system - To view the live logs run
npm run docker-dev-logs
. Note: Run this command from your host system
-
database : Mariadb server
- exposes port 3306 by default. You can change this port by updating DEV_DATABASE_PORT in the file
docker/.env
.
Internally, the port is always 3306
- exposes port 3306 by default. You can change this port by updating DEV_DATABASE_PORT in the file
-
webserver : The web server and container that contains all of the application's code
-
exposes port 80 by default. You can change this port by updating DEV_WEBSERVER_PORT in the file
docker/.env
.Internally, the port is always 80
-
-
adminer : Simple web application to access the database server graphically
-
exposes port 8088 by default. You can change this port by updating DEV_ADMINER_PORT in the file
docker/.env
Internally, the port is always 8080
-
default credentials
- username:
churchcrm
- password:
changeme
- default database:
churchcrm
- root user password:
changeme
- username:
-
-
mailserver : SMTP testing server. A fake email inbox
- exposes port 1025 and 8025. These ports can be changed by updating DEV_MAILSERVER_PORT and DEV_MAILSERVER_GUI_PORT respectively. Port 8025 is the application's UI port.
if you are developing on your local dev system and testing via docker, use the following:
- Docker
- Docker Compose
- GIT
- node / npm
- Clone ChurchCRM Repo
git clone [email protected]:ChurchCRM/CRM.git
- build code
npm run deploy
- build docker
npm run docker-test-build
- run docker
npm run docker-test-start
- test code
npm run docker-ci
- stop docker
npm run docker-test-stop