Docker Compose
Dalam panduan ini, anda akan menyebarkan MyEMS dengan Docker Compose dengan membuat dan memulakan semua perkhidmatan dengan satu arahan.
Keperluan Awal
- Docker, docker-compose, npm dipasang pada hos.
- Pelayan MySQL dipasang dengan nama pengguna 'root' dan kata laluan '!MyEMS1'.
- Pangkalan data MySQL boleh disambungkan dari hos di mana Docker Engine berjalan.
Konfigurasi
Hos merujuk kepada pelayan di mana enjin docker berjalan. IP dan kata laluan akaun diandaikan dan digunakan untuk menunjukkan arahan. Sila ubah suai mengikut kesesuaian.
| -- | -- |
|---|---|
| IP Hos | 192.168.0.1 |
| IP Pangkalan Data | 192.168.0.2 |
| Pengguna Pangkalan Data | root |
| Kata Laluan Pangkalan Data | !MyEMS1 |
Pemasangan
- Klon repositori
git clone https://github.com/myems/myems.git
- Import skema pangkalan data
cd myems/database/install
mysql -u root -p < myems_billing_db.sql
mysql -u root -p < myems_carbon_db.sql
mysql -u root -p < myems_energy_baseline_db.sql
mysql -u root -p < myems_energy_db.sql
mysql -u root -p < myems_energy_model_db.sql
mysql -u root -p < myems_energy_plan_db.sql
mysql -u root -p < myems_energy_prediction_db.sql
mysql -u root -p < myems_fdd_db.sql
mysql -u root -p < myems_historical_db.sql
mysql -u root -p < myems_production_db.sql
mysql -u root -p < myems_reporting_db.sql
mysql -u root -p < myems_system_db.sql
mysql -u root -p < myems_user_db.sql
Nota: Rujuk pangkalan data
- Ubah Suai Konfigurasi
Andaikan IP hos adalah 192.168.0.1, IP pangkalan data adalah 192.168.0.2, akaun pangkalan data ialah: root, dan kata laluan pangkalan data ialah: !MyEMS1, sila ubah suai mengikut kesesuaian
3.1 Ubah alamat API dalam nginx.conf
cd myems
nano myems-admin/nginx.conf
nano myems-web/nginx.conf
3.2 Salin example.env ke .env dalam setiap folder dan ubah suai IP pangkalan data, nama pengguna dan kata laluan dalam .env
cd myems
cp myems-aggregation/example.env myems-aggregation/.env
nano myems-aggregation/.env
cp myems-api/example.env myems-api/.env
nano myems-api/.env
cp myems-cleaning/example.env myems-cleaning/.env
nano myems-cleaning/.env
cp myems-modbus-tcp/example.env myems-modbus-tcp/.env
nano myems-modbus-tcp/.env
cp myems-normalization/example.env myems-normalization/.env
nano myems-normalization/.env
3.3 Ubah suai folder upload dalam docker-compose.yml Jika Hos Windows, gunakan c:\upload untuk volumes/source dalam perkhidmatan api dan admin. Jika Hos Linux, gunakan /upload untuk volumes/source dalam perkhidmatan api dan admin. Pastikan folder upload dalam api dan admin adalah folder yang sama pada hos.
- Bina UI Web
Ubah suai fail konfigurasi:
Dapatkan mapboxToken dari https://mapbox.com dan kemudian tetapkan showOnlineMap kepada true. Jika anda ingin mematikan ciri peta dalam talian, tetapkan showOnlineMap kepada false
cd myems/myems-web
sudo nano src/config.js
Bina:
cd myems/myems-web
npm i --unsafe-perm=true --allow-root --legacy-peer-deps
npm run build
- Jalankan arahan docker-compose
Pada Hos Windows:
cd myems
docker-compose -f docker-compose-on-windows.yml up -d
Pada Hos Linux:
cd myems
docker-compose -f docker-compose-on-linux.yml up -d
- Pengesahan
| Alamat | Hasil Dijangka | |
|---|---|---|
| myems-web | 192.168.0.1:80 | Log masuk berjaya dengan memasukkan akaun dan kata laluan |
| myems-admin | 192.168.0.1:8001 | Log masuk berjaya dengan memasukkan akaun dan kata laluan |
| myems-api | 192.168.0.1:8000/version | Kembalikan maklumat versi |
Jika API melaporkan ralat, sila sahkan sama ada IP pangkalan data, akaun pangkalan data dan kata laluan pangkalan data dalam .env adalah betul. Jika tidak, sila ubah suai kemudian jalankan:
docker-compose up --build -d
Disebabkan isu rangkaian ISP, anda mungkin mengalami tarikan imej yang perlahan. Anda boleh menggunakan perkhidmatan pecutan pihak ketiga.