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