? Aplikasi Kabar Baik adalah proyek open source yang sepenuhnya dibuat secara luar biasa untuk tujuan pendidikan. Ini berisi backend (Anda dapat melihat responsnya jika Anda membuka tautan ini https://api.good-news.ggc.team/v1/news/ ) ditulis dalam aplikasi seluler Golang, iOS & Android (yang akan saya terbitkan ke App Store dan Google Play) yang dibuat dengan Flutter dan Frontend yang dibuat dengan hummingbird (Flutter for for). Tautan ke repositori untuk kode aplikasi seluler dan frontend akan ditambahkan nanti ketika segera setelah saya selesai mengerjakannya. Kode saya tidak akan sempurna karena fakta bahwa saya bukan seorang profesional super dalam topik -topik itu, tetapi saya akan melakukan yang terbaik, janji ✌️ Saya adalah pendukung gagasan untuk berbagi pengetahuan dengan dunia karena selalu baik untuk berbagi apa yang telah Anda pelajari dengan mereka yang mungkin berjuang dengan masalah yang sama yang Anda hadapi dan dengan melakukannya, saya akan belajar sesuatu yang baru juga. Strategi win-win.
Saya sedang dalam proses penulisan bab dibagi menjadi artikel di Medium. Di bawah ini Anda akan menemukan tautan ke mereka. Mereka akan diperbarui saat saya selesai mengerjakannya.
Artikel pengantar - Di sini Anda akan menemukan semua informasi pengantar dan tautan ke bab lain juga.
Semua bab "buku":
Dan di sini adalah artikel bab saat ini (repositori):
Untuk meluncurkan proyek ini secara lokal, Anda harus menginstal Golang dan Docker di mesin Anda.
Perhatikan: Kode dalam repositori ini bukan versi final dari apa yang saya katakan dalam artikel saya. Misalnya, jika Anda ingin tahu cara menerbitkan proyek ini pada tetesan laut digital di belakang Traefik Reverse Proxy dengan HTTPS yang tersedia di domain Anda sendiri, Anda harus mengikuti semua artikel di atas.
Pertama -tama, Anda harus cd ke tempat $GOPATH Anda menunjuk pada mesin Anda, kemudian cd ke $GOPATH/src/github.com/<your_github_or_any_username> . Setelah itu, Anda akan mengkloning repositori ini, cd untuk itu dan menjalankannya dengan Docker Compose. Tolong, pastikan bahwa Docker Anda diluncurkan dengan sukses saat mengikuti langkah -langkah di bawah ini. Jadi langkahnya adalah:
> cd ~/go/src/github.com/kanzitelli/ - mungkin berbeda dari Anda tergantung pada $GOPATH dan nama pengguna Anda. Untuk memeriksa di mana $GOPATH menunjuk ke, silakan ketik go env di terminal dan Anda akan menemukannya di awal daftar yang dicetak.> git clone https://github.com/kanzitelli/good-news-backend.git> cd good-news-backend/> docker-compose build && docker-compose up -dlocalhost:6969/v1/news/sources . Anda tidak boleh melihat apa pun, benar. Karena kita perlu mengkonfigurasi MongoDB juga?> docker exec -it mongo mongo -u "GGCTeamBatr" -p "MySuperSecretPassword" --authenticationDatabase admin -Untuk membuka shell mongo db berjalan di dalam wadah Docker kami> use good_news_db - jadi kami mengubah (membuat) menjadi db yang dibutuhkan> db.createUser({user: 'suuuper_user', pwd: 'soop3r_U$eR_PSWD', roles:[{role:'dbOwner', db:'good_news_db'}]}) - menciptakan pengguna super super:> db.test_collection.insert({ test: "test" }) - Memasukkan data uji untuk menguji pengumpulan> show collections - menampilkan semua koleksi DB yang kami buat sebelumnya untuk memastikan bahwa koleksi pengujian kami telah berhasil dibuat> exit - mengucapkan selamat tinggal pada shell mongo> docker ps - Untuk menampilkan semua wadah Docker yang sedang berjalan. Temukan CONTAINER ID (kolom pertama) dari wadah bernama api .> docker stop <api_contrainer_id> - Untuk menghentikan wadah API. Kami akan menjalankannya kembali di langkah berikutnya.> docker-compose build && docker-compose up -d -Untuk membangun kembali wadah Docker kami dengan pengaturan baru yang diterapkan pada MongoDB..env di akar proyek (jika Anda ingin mengubahnya)localhost:6969/v1/news/sources . Sekarang Anda harus melihat sumber berita yang sudah diisi sebelumnya sebelum diluncurkan server. Setelah 3 menit, Anda akan dapat melihat berita pertama berkumpul dari situs berita parsing dengan membuka localhost:6969/v1/news . Mengapa 3 menit? Ikuti artikel saya di media untuk memahami ituJika Anda memiliki komentar atau saran, jangan ragu untuk mengirim email kepada saya di [email protected]? Jika Anda ingin tahu kapan saya memposting artikel baru, ikuti saya di Twitter?