Run I1820 on dockers with no pain.
These steps describe the procedure for running the dockerized version of I1820. You can build each module from the source based on its readme.
- Clone
Dockerit
repository.
git clone https://github.com/I1820/Dockerit && cd Dockerit
- Start MongoDB database and configure its replication if you want. Please do not expose mongodb on
0.0.0.0
if your machine have public IP. Change remote ip binding inmongodb/docker-compose.yml
withremote_ip:remote_port:local_port
.
./start.sh mongodb up -d
- Start RabbitMQ. Please do not expose it on
0.0.0.0
if your machine has public IP.
./start.sh rabbitmq up -d
- Start Portainer and Prometheus. Please do not expose them on
0.0.0.0
if your machine has public IP.
./start.sh portainer up -d
./start.sh prometheus up -d
- Start vernemq and configure its authentication handler's urls.
./start.sh vernemq up -d
- Clone
pm
component repository.
git clone https://github.com/I1820/pm && cd pm
- Create database indexes. Please note that you can create them manually and without grift.
buffalo task mongo
- Run
runme.sh
./runme.sh
- Check
pm
configurations and run its docker. Please note that pm passes these configuration to project's dockers so they must work there too.
./start.sh pm up -d
- Check
link
configurations and run its docker.
./start.sh link up -d
- Check
dm
configurations and run its docker.
./start.sh dm up -d
- Clone
backend
component repository.
git clone https://github.com/I1820/backend && cd backend
- Create database indexes. Please note that you can create them manually and without grift.
buffalo task mongo
- Check
backend
configurations and run its docker.
./start.sh backend up -d
Please consider that in deployment you can change these ports with caution.
Service | Abbr | Port |
---|---|---|
Project Manager | pm | 1375/tcp |
Link | link | 1372/tcp |
Data Manager | dm | 1373/tcp |
Web Backend | wb | 1994/tcp |
Web Frontend | front | 1820/tcp |
Weather Forecasting | wf | 6976/tcp |