Deployment

Deployment aplikasi yang dibangun menggunakan MocoBaaS dapat dilakukan dengan menggunakan teknologi container seperti Docker. Disarankan untuk dapat menggunakan tahapan CI/CD berbasis Git.

Pada menu Console bagian Configuration, terdapat opsi untuk mengubah parameter dari 3 (tiga) environment berbeda, yaitu:

  • Development
    Berisi konfigurasi untuk aktifitas development dari komputer developer. Parameter secara default berisi koneksi dengan local docker environment
  • Test
    Berisi konfigurasi untuk deployment di server Dev/Test
  • Production
    Berisi konfigurasi untuk deployment di server Production
graph LR B1[Develop branch - repo] B2[Master branch - repo] IM1[Test Image] IM2[Production Image] S1[Dev / test server] S2[Production server] developer --> |push|B1 developer --> |push|B2 subgraph Test Environment B1-->|build|IM1 IM1-->|deploy|S1 end subgraph Production Environment B2-->|build|IM2 IM2-->|deploy|S2 end

GitLab CI (DockerHub)

Pengembang yang menggunakan GitLab sebagai code repository dapat memanfaatkan fitur GitLab-CI untuk melakukan build container image yang dapat disimpan ke dalam DockerHub atau Image Repository lainnya. Berikut adalah contoh file gitlab-ci.yaml yang ditambahkan ke dalam folder project untuk membuat image saat ada proses push commit ke remote git repository.

cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- node_modules/
before_script:
- npm install
production:
image: node:12
stage: deploy
only:
refs:
- master
script:
- npm run buildimage:production
- docker login --username=yourhubusername --email=youremail@company.com
- docker push appname-production
testing:
image: node:12
stage: deploy
only:
refs:
- develop
script:
- npm run buildimage:test
- docker login --username=yourhubusername --email=youremail@company.com
- docker push appname-test