Apa alasan untuk menggunakan buruh pelabuhan dalam proses pengembangan perangkat lunak Anda jika Anda tidak menggunakannya dalam produksi?

8

Docker memiliki banyak potensi untuk menyelesaikan masalah di tempat kerja saya dalam tim besar (100) pengembang perangkat lunak dan digunakan untuk memecahkan masalah di tempat kerja saya. Ini termasuk:

Umpan balik kembali kepada saya:

Sangat menyenangkan Anda berhasil, tetapi memahami ekosistem buruh pelabuhan adalah lompatan mental bagi sebagian orang . Sudah ditetapkan bahwa kami tidak akan menjalankan buruh pelabuhan dalam produksi, jadi kami benar-benar tidak berpikir ada alasan untuk berinvestasi dalam meningkatkan jumlah karyawan kami dalam perangkat ini.

Pertanyaan saya adalah: Apa alasan untuk menggunakan buruh pelabuhan dalam proses pengembangan perangkat lunak Anda jika Anda tidak menggunakannya dalam produksi?

hawkeye
sumber
5
Hanya karena Anda tidak akan menggunakannya dalam produksi tidak berarti itu bukan alat yang berguna untuk tujuan pengembangan, jadi argumen "kami tidak akan menggunakannya dalam produksi, jadi kami tidak ingin melihatnya "suara tidak valid untuk saya. Anda sudah memiliki daftar hal-hal yang menunjukkan bagaimana itu bisa bermanfaat. Saya menggunakannya untuk menjalankan database untuk pengembangan dan pengujian pada mesin pengembangan saya.
Jesper
Hanya satu catatan singkat: Bagi saya Anda meningkatkan (mesin yang lebih kuat) atau Anda skala secara horizontal (tambahkan lebih banyak mesin). Meningkat secara horizontal terasa aneh bagi saya.
Machado
1
Bantulah sendiri dan persembahkan satu mesin untuk mereplikasi kondisi produksi jika Anda memutuskan untuk menggunakan rute menggunakan Docker sehingga Anda dapat menguji program dalam lingkungan yang serupa dengan produksi mungkin. Selain itu, menjadi gila Docker, bersenang-senang.
Neil
Kiat cepat lainnya: Server Kontrol Sumber, Server Build dan Server CI ADALAH PELAYANAN PRODUKSI untuk pengembang Anda. Org Anda mungkin menggunakan IT sebagai sarana untuk mencapai tujuan akhir (artinya Anda tidak berada dalam bisnis Tek), tetapi jika Anda memiliki pengembang, mereka berharap memiliki lingkungan yang dapat mereka andalkan untuk melakukan beberapa pekerjaan. Itu berarti semua server di atas harus diperlakukan sama pentingnya dengan yang lainnya di infra Anda, atau Anda mendapatkan tim tanpa sumber daya untuk bekerja dan memberikan. Bahkan jika TI adalah sisi pendukung operasi Anda, Anda tidak ingin mereka hanya menunggu server untuk kembali online.
Machado
Masalah dengan umpan balik yang Anda dapatkan adalah: diterjemahkan ke »Pergi dengan buruh pelabuhan. Kami tidak menginginkannya. «Tentu saja ada banyak alasan yang bisa diberikan seseorang untuk menggunakan buruh pelabuhan, tetapi dalam kasus ini, tampaknya umpan balik itu hanya alasan yang sopan.
Thomas Junk

Jawaban:

8

Berikut adalah beberapa alasan mengapa kami menggunakan buruh pelabuhan sebagai bagian dari proses pengembangan perangkat lunak kami (kami belum menggunakannya dalam produksi):

  • Lingkungan penyebaran lokal yang konsisten dan terkontrol versi - kami memeriksa buruh pelabuhan kami menjadi kontrol versi, dan kami dapat berkolaborasi di stack. Kita bisa mendapatkan lingkungan yang benar-benar bersih dengan menghentikan dan memulai tumpukan.
  • Kemudahan distribusi lingkungan ke rekan setim - baru-baru ini kami memiliki setumpuk perangkat lunak yang benar-benar baru yang harus kami mulai pelihara. Kami hanya perlu membuat tumpukan sekali di Docker dan mendistribusikannya di antara tim alih-alih mendokumentasikan alat dan proses untuk menginstal banyak perangkat lunak. Dokumen sering dilupakan dan hanya diuji ketika anggota baru bergabung dengan tim - seringkali instruksi tidak berfungsi lagi.
  • Digunakan dalam pembuatan CI dan pengujian otomatis - Gambar yang sama yang kami gunakan untuk menyebarkan dan menguji perangkat lunak secara lokal digunakan oleh CI untuk membangun dan menguji perangkat lunak. Ini membuatnya lebih kecil kemungkinannya bug khusus untuk kebiasaan di lingkungan lokal seseorang.
  • Lebih mudah daripada mesin virtual untuk mengelola, mengubah, membangun, dan mendistribusikan.
  • Memberikan kemampuan untuk memperluas gambar yang sudah ada sehingga kami tidak harus membuat gambar dari awal. Biasanya ada gambar open source yang tersedia untuk paket perangkat lunak populer.
Samuel
sumber