Beberapa hal perlu terjadi agar ini berfungsi dengan baik. Pertama, tambahkan deploymentbagian 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 chmoddan menambahkan variabel lingkungan dan DEPLOY_USERkunci 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.