Beberapa hal perlu terjadi agar ini berfungsi dengan baik. Pertama, tambahkan deployment
bagian ke circle.yml:
deployment:
main: # or whatever your deployment is called
branch: master # or whatever branch you want to deploy
commands:
- docker login -e (your email here) -u (your username here) -p (your password here)
- docker push pgeiss/appname
- ./start.sh
Berkat posting blog ini untuk skrip berikut. Kemudian, buat file bernama start.sh di tingkat atas repositori Anda (jika Anda menggunakan nama yang berbeda, ubah baris terakhir circle.yml) yang berisi yang berikut ini:
#!/usr/bin/env bash
echo "stopping running application"
ssh $DEPLOY_USER@$DEPLOY_HOST 'docker stop dodsv'
ssh $DEPLOY_USER@$DEPLOY_HOST 'docker rm dodsv'
echo "pulling latest version of the code"
ssh $DEPLOY_USER@$DEPLOY_HOST 'docker pull pgeiss/appname-webapp:latest'
echo "starting the new version"
ssh $DEPLOY_USER@$DEPLOY_HOST 'docker run -d --restart=always --name dodsv -p 80:5432 pgeiss/appname:latest'
echo "success!"
exit 0
Akhirnya, untuk memungkinkan skrip bekerja Anda harus mengatur skrip untuk dieksekusi chmod
dan menambahkan variabel lingkungan dan DEPLOY_USER
kunci ssh Anda (lebih disukai) atau kredensial (jika tidak ada kunci ssh) ke CircleCI. Setelah melakukan itu CircleCI harus menyebarkan aplikasi Anda setelah pembangunan yang berhasil.