 Ya, tapi segera, sehingga bos kamu tahu kamu ada di video, kamu harus tahu bagaimana untuk membuat pembentangan Kamu perlu melakukan pembentangan dari belakang, dari tes untuk membebaskan Saya tak peduli, jadi ya, kita perlu belajar Jadi kita cuba beberapa servis AWS Amazon, adalah salah satu Dan kita cuba digital ocean, Heroku, modular, sebuah namanya Sekarang. Jadi hari ini, kita sepatutnya membaikkan ke AWS, yang sebenarnya saya cuba Atau sebenarnya saya cuba kadang-kadang lalu, dan saya cuba semalam lagi hari ini Jadi ia sama, jadi ia sepatutnya mudah Ya, tapi pertama-tiga, kamu perlu mendapatkan pembentangan Untuk konsolnya, jadi saya percaya semua orang sudah mempunyai Ya, sebabnya, ini sebuah pembentangan, ia seperti, kita bekerja, bekerja bersama Jadi jika kamu tak ada, kamu boleh belajar untuk pembentangan pertama-tiga tahun, pembentangan tiga tahun Jadi ya, saya hanya belajar tiga hari lalu Sebab yang kita menggunakan adalah... Kita tak boleh menggunakan yang klinik, jadi kita perlu menggunakan pembentangan Jadi saya menggunakan nama sendiri untuk menggunakan Jadi dengan sebaiknya, kamu perlu membutuhkan kredit-kartu kepada, untuk, untuk, untuk, untuk, untuk, untuk, untuk, untuk, untuk, untuk, untuk, percutiaan, percutiaan Jadi jika, jika kamu tak ada, jika kamu boleh membuat pembentangan Atau jika anda ingin, anda boleh menangis sekarang. Kita boleh menunggu untuk anda kerana ia mengambil beberapa minit untuk mendapatnya. Okey, sesiapa perlu menangis sekarang? Kita boleh menunggu untuk anda sedikit. Tidak, patutkah kita lanjutkan? Ya. Okey. Baiklah, kita akan menggunakan dua instanasi yang mudah untuk gambar serva kita. Jadi, apa yang anda ingin lakukannya adalah, anda perlu mencabar pakaian yang penting. Itu adalah untuk anda untuk menghubungi instanasi atau serva yang anda tidak nama. Jadi, apa yang anda boleh lakukannya adalah, anda boleh mengambil pakaian yang penting, atau anda boleh mencabar pakaian yang penting daripada pakaian. Jadi, saya rasa anda akan mencabar pakaian yang penting. Jika anda memberikan nama, ia boleh menjadi nama-nama. Jadi, kita panggilnya, T-Create. Kemudian, ia akan mencabar pakaian yang penting. Jadi, apa yang anda perlu lakukannya adalah, anda boleh bergerak ke tempat yang penting, atau tempat yang penting yang anda mahu. Sebenarnya, apa yang kita akan mencabar, ia di bawah pakaian yang penting. Ia akan mencabar pakaian yang penting. Ya, saya akan mencabar pakaian di sini. Jadi, ia sepatutnya sepatutnya selamat. Saya sepatutnya sepatutnya sepatutnya sepatutnya sepatutnya selamat. Dan apa yang mereka akan lakukannya adalah, hanya anda boleh mencabar pakaian yang penting, anda harus mengubah pakaian yang penting daripada pakaian. Sebenarnya, apa yang anda boleh lakukannya adalah, anda tidak perlu lakukannya, tapi anda boleh lakukannya. Baiklah, pergi ke pejabat rumah anda. Dan kemudian, saya percaya pakaian saya di sini. Jadi, anda boleh mengubah pakaian yang penting daripada pakaian yang penting. Ia bermaksud, hanya anda boleh mencabar pakaian yang penting. Jadi, ia adalah pakaian yang penting. Baiklah, anda tidak mungkin perlu mengubah pakaian, tapi hanya untuk persenjataan. Baiklah, kita ada kerja yang penting. Dan apa yang anda normaliti adalah, membuat instans baru. Sebenarnya, ia adalah pakaian yang baru daripada pakaian yang penting. Jadi, saya akan memilih pakaian yang ini, kerana saya hanya mencoba pakaian yang ini, tetapi saya percaya ada pakaian yang lain, seperti pakaian yang daripada pakaian yang dengan Windows. Selekt yang ini. Okey, kerana ia adalah perkara 3D, jadi kita memutuskan untuk menggunakan sahaja yang paling kecil. Periksa. Ya, sebenarnya kita boleh menambahkan lebih... Jika anda perlukan extra storage atau lain-lain, anda boleh menambahkan di sini. Sebaiknya, anda menambahkan storage. Tapi ya, kita tidak perlu. Menambahkan dan melepaskan perkara yang anda memutuskan. Sebaiknya. Jadi menambahkan istimewa. Okey, dan kita sudah selesai. Jadi apa yang anda mencari adalah... Sebaiknya, sebuah servis. Jadi, biarkan mereka bergerak sedikit. Anda boleh menambahkan. Anda boleh menambahkan istimewa. Mari kita lihat. Jadi ya, ia bergerak. Sangat cepat. Okey, dan ini adalah adres IP. Saya percaya anda boleh menggunakan DNS yang baik, tapi saya hanya menggunakan IP pada saatnya. Jadi saya hanya mencari satu ini. Dan... cuba menambahkan istimewa. Jadi... penggunaan penggunaan penggunaan penggunaan yang terbaik... bahkan di DigitalOcean... penggunaan penggunaan adalah Rude. Tapi untuk AWS... mereka menghargai anda untuk tidak menggunakan Rude... tanpa menggunakan Ubuntu. Maksudnya untuk image Ubuntu. Menggunakan Ubuntu... sebagai penggunaan penggunaan. Tetapi ya, ia tidak penting. Sehingga saya boleh menambahkan, ia okey. Jadi saya harus... Okey, saya mencari Rude. Mereka akan menghargai anda dan menghargai anda. Jadi mari kita cuba. Adakah ia betul? Ya. Okey, sebab kita menggunakan pilihan pribadi kita... jadi... untuk SSH untuk bekerja... tempat yang terbaik untuk mencari... adalah satu yang kita selamatkan. Yang itu adalah SSH. Tapi mereka akan mencari... ID, RSA dan sebagainya. Tetapi... mereka tidak tahu nama kamu... adalah KometuAWS.PM. Jadi kamu perlu... biarkan mereka tahu. Jadi flag saya adalah identiti file. Jadi kamu hanya... bagaimana tempat kamu. Jadi ia sepatutnya... SSH... saya rasa... sebab saya dalam folder itu. Jadi sebenarnya, saya boleh... beri nama saya. Ya. Jadi semoga kita boleh... tentu saja, pertama kali kita mencari pilihan pribadi... kita menambahkan... menambahkan pilihan pilihan pilihan. Jadi kamu hanya... semoga... mencari pilihan. Ya. Dan kemudian... kamu akan mencari pilihan pilihan. Kamu perlu mencari pilihan pilihan... sebagai pilihan pilihan pilihan... daripada pilihan pilihan pilihan. Jadi ia akan menghubungkan... Pilihan pilihan. Okey, tidak menghubungkan. Jadi perkara yang terakhir adalah... Ya, cuba... cuba mencari pilihan pilihan... lagi. Cuba menggunakan... Pilihan pilihan. Ya. Sekarang kita dapat melihat... kita sudah dalam pilihan pilihan... pilihan pilihan pilihan. Jadi... basically that's all. You don't need to touch the instant... any further. So we exceeded. What... now what we are doing is... all from our local... to deploy all your local file... to the instant... to the server. So let's go to our... folder is called... and then... Okey, now we create a new folder. Let's say you already have... your working... Meteo app. But we don't have it. We create it now. So Meteo... create... Ya, test. No. We put it as AWS. Okey. So it will create... the Meteo app in your folder. So we go into it. Okey. So basically you will have all your file. Three files. Default Meteo application... would strap, I would say. So... Okey. The next thing is... if you want to deploy to... to the server, you need... you can manually do it. You can basically... Okey. Go into your instant. Download the Meteo... package. Yes. And then download the node. Download... whatever you want to download. And then you can do it... all on the server. But... we have a GodSend MPM package... who... is... which is created by Aronoda... I suppose... who has joined the last... made up... already made... met him. No, not really. Ya, maybe some... some of the... some of the guy. So what normally what you need to do is... what he has created is like... he abstract away all the... complicated manual work. I would say it's awesome. So what we need to do is like... we just need to download the MPM package... which normally what you do is like... something like this. MPM install... G is for global. If you want to only install on... your local... your local folder, you can... you can ignore the G but... but I just do it. Ya. So it will install the MPM package. Of course before you use MPM, you have to have MPM, right? So I believe that everyone already know what is MPM. So... Ya, basically this is... what is dependency and all this thing. So we have it now already. So what normally you would like to... Okay, let's say now you run it. You have all this default action. Basically what we need to do is... we only need to do 3 things. We first it needed... and then set it up. And the third one is to deploy it. So basically we will only use the first 3 thing. Or any... any issue... maybe any error set... that you can print out the logs... and see what's... what's the error. Okay. So we have this... let's say... Okay, we try this project. Okay. So actually we have this project. Let's say you already have your project. But we use this default dummy project. So... Okay. So what you need to do is... the first thing is to just init it. Basically what init does is... it just copy 2 files to your folder. Which is the... map JSON file and the settings file. Basically the settings file is... is also... how to say... it's native to Meteor. Because you can put your environment settings into that folder. So... regarding the settings.json you can look at the document... and look at what are the... default... some of the default... properties that they... meteor support. So... Okay. So basically now what we need to focus is... we need to focus on the map.json. So... let's... see what's inside. Use your favorite editors. Subline maybe. I don't know. Okay. And look at the file map. Is it big enough? Okay. Let's suppose. Yes. Okay. Basically just feel... just feel in the configuration and... it would... it should work. As expected, I would say. Okay. I highlight it easier for you to see. Okay. What's name? Copy.IP. You can use... you can use the public domain. I suppose. I mean the name. Username. Okay. Password, we don't have a... we are not using password. So we can just comment it out. But we are using a... a private key. So actually... of course it's not in this... this folder. So actually it's... my name is call... Okay. So this is for authentication of course. And then set up mong... You can see. Set up mongol. Yes. Definitely you... your application might or might not need but... but it will only do it once. After that... after that it will not do anything. Set up the node. Of course if you... if you install node already on your server, then you might not need it. But eventually you need the version of 0.10.36. If you try... I believe the current... the current latest one is like 0.12 or something like that. But I try it... because like we... like developer, right? We always like the latest. Yeah. I'll bump it to the... to the latest one. Definitely it's better. But I try it already and it... it's not working. So don't even try. So just... just use the default one. I have tried the latest one 0.12 and then I tried the... downgrade to 0.10.33 or something like that and it's still not working. So okay. Forget it. Just... stick to the default one. Okay. And then the app name... you can have any app name that you can have like a staging or deployment or production or whatever name you want. But of course no space like I already say it, right? And then the location of your... of your project. So basically... normally you would run this... mark... mark basically submit it up, right? So... from... your local folder. Now the current folder, right? So basically what you need to do is just put a dot. So we should not... it's the current folder. So you can run from the current folder. And then this one definitely is your... your... to be production... URL. Domain. Okay. So you can put it here. Basically this one is like... this is for the... when you use a meteor dot absolute path or something like that, it will spit out this URL. Basically it's this URL. So... Ya. So at the moment I just leave it like this. If you have extra... environment... property I would say... what's it called? Environment... property? Ya. Okay. But parameter yes, you get. Then you can put whatever it's inside this. Also actually maybe you have a... separate Mongo... database. Then you can put... like Mongo... something... URL... into it. So but... that is not in our scope now. Ya. And basically this one leave it because it will check see whether if the... the deployment is successful after like 15 seconds maybe you need some... some... Mongo setup to do or whatever. Ya. So basically I will leave it... I leave the default if... it would be... Ya. It would be just 15. I believe it's 15 seconds. Yes. So you can just leave it. Ya. Basically we are done. So like this is like super... straight forward I would assume. Ya. Of course now look at it it's like super... super simple, right? Because when we test it out and then we have deploy it and then ah you have error and then you go to internet and search for it. I hopefully can save you some time to not... to try it on 0.12.12 and it's not working. Don't even waste your time. So basically this is the... this is what we are. So save it. Of course. Ya. You save. And we can run the second command which is called set up. Basically what it does is... Ya. Definitely it has more to do it behind the scenes but basically what I understand is like okay it will bundle your application locally and then upload the whole bundle onto the server which you set it... you set the IP and all this thing, right? Onto it and then run an upstart distribution, the building of distribution onto it and keep monitoring it. That's all. So... Ya. So actually we just wait for the... the command to finish. I believe it's for spyder for spyderable or this thing Ya to to to work which is like a SAO thing but I believe you can don't put it. I don't know if this is a must. I never try but I leave the default to the author. So since it's got send. Okay. Hopefully we have few on track. Any problem so far? Ya. Because I... I cannot see any problem deploying on the AWS so far but because it's like it's quite straightforward. I mean they make it easier to deploy. Ya. There is some glitch but we will look into it. But it shouldn't be a problem. So this installs all the dependencies like Mongo... Yes yes. Because the configuration already have it. So actually it will set up your Mongo. It will set up it will set up node. It will set up any dependencies to it. So you can start a big black machine. Ya. So actually you can you are seeing what they actually are doing. I think we copy. They will help her. When you look into the source of the package the NPM package you will see that okay he has a lot of templates file that he will copy over and then run. So basically it's like ya something like a task list. Something like a grand task list. So I don't know that. So ya. Okay. Wah done. So good. Normally you will hit road block here. I mean I cannot copy or cannot whatever. Then you have to look into the documentation and see whether if your user has the permission to copy files and all these things. So you might need to tick around. Ya. But but from what you are seeing basically I didn't do anything like pseudo or whatever whatever thing that that would block you. But it looks so far it's okay. Okay. So setup done. Deploy. Okay. Basically after we deploy then it should be done. Hopefully. Ya. Basically we will upload the video to the server. Ya. This one I would say it depends on your project. If your project is big then it might take some time. So but our default little board shouldn't oh no it's not the little board it's just click. Right. It should be fine. It should be fast. I would say. So ya. They will setup the environment variable and Ya. Sorry again. NGNX. NGNX. Basically the behind the scenes I believe that they are using NGNX for especially the SSL portion right. They need ya and eventually now I just look at it this noon and they have another version which is working on I mean the MAP the MAP has a new version coming up and maybe still in development so it it works on Docker kind of thing and then we will we will use we will use NGNX as a SSL thing Ya. So I believe yes at the yes they are so I believe that they also use the start thing the start and the but thing which is like to terminator for this SSL thing but ya but basically you have to know that we are friend and developer so basically before that we don't know anything about other server but yes we really appreciate that we have this guy to really make everything abstract out so easily right so we hopefully not I don't know because as a friend I should just care what I do in the front let's say your your SSL your HTML your JavaScript in the front anything related to the server backend thing should live to expert they are expert on that but eventually you can't you can't avoid it if you go step into meteor meteor is like oh okay you can learn one language and do everything everywhere so yes ya if you are in a small company ya you have to do it all but if you are in a bigger company maybe ya or not okay done basically ah okay do you think we will work? ah basically it's no it will not work because like the default instant from AWS has no inbound inbound port ya inbound port for you to access so it only have the 22 port which is like the SSH port so ya you cannot access it default group security group from AWS is like when you create a new instant they will give you this launch wizard security group only have 22 so basically you cannot do anything except for show it so so what you need to do is just add a new one ya this one basically you because obviously you totally have no idea eh why I cannot access and then you do a little of Google search and then ya so now you save time you don't need to do anything okay basically it would be good that your instant has group that specifically for your developers you can go into security group and create which you think is most suitable for your developers or maybe your admin or whatever so but regarding creating group I believe is simple you create a group and then you give what role no what action you can okay let's try ya add some rules and then basically give it a name I tried yesterday basically it's like you can set what the user can do in this group so but of course I'm not the best person to to to walk you through the the base app maybe maybe next time we can have a sorry oh sorry ya this one ya on the bottom half bottom half okay click on that click on that ya isn't it the same ya that's the current security group oh yes yes yes yes I just added okay so ya basically you can create another group that specifically for your developers maybe they can only access into it they cannot view it or whatever so you have your group already okay basically it works ya done so basically that's deployed I don't really call it as a production because I I don't know personally they are a different kind different school of thought that Meteo is really not ready for production but I don't know because like without a proper testing framework especially they say that okay it's not really for production because like you cannot test your your product you cannot test your your app right but but people some people will say that okay it's ready because like we already put for like 20 apps already it's running no problem but that is different story so let them argue we don't but as long as I can make it onto the web and someone can use it I ya I call it production already so ya you can do it staging you can call it staging you can call it what do you want to call it production or development or thing so ya cool ya we are done basically there are some I would say there are some let's say if you don't want to because this morning I saw one guy in the meteor forum so coincidentally he has he has this hackpad which he did he documented it down and then he literally do it himself so he didn't use map so he ya he install the engine X he install all this configuration and then he he STD STDBS and then ya Apache and all this MongoDB upstart ya upstart is the one that Arun is using so and ya NBM your version and your node your NPM your forever your meteor whatever shit so he I believe that he went through a very rough path compared to us because we just do it it's done of course if you need more manual tweak or fine grind the management then basically you need to do it your way so may do it manually but at the moment I think so far it's fine and ya you can have a manage more of your user and through this AWS documentation how you manage your user ya let's say if you want to add more user to to your server and kind of thing ya and if you don't know how to create your shell key basically just how we just created right ya the other thing is like if you want to use your own local your local a shell a private key you can just choose a file to upload to your public key basically I have a public key it's like a public right so you just need to copy all this thing and put it in then you can create your own key basically it will match your machine right so but of course we encourage you to use a private key instead of using a password because password if you commit your map jason file onto the github then ya someone can see it so I don't know so private key is the best to go definitely AWS is that encourage you to use a key because it make it so easy just click one click and download the file and put it in the folder and all done okay and you can have different server have different key so ya so it's good all key we are done any question what do you do when you change your file and you really deploy it ya you just run again multiply and done so basically it is super so like of course if you want to do some maybe some manual work on file syncing that you might need to do it yourself shout into the instant and do whatever you want to do so there is no like get or version control type integration version control what you still can do version control of course yes on your continuous integration continuous integration yes I try it and not success ya actually I try I try to traverse continuous integration actually I somehow success it on the package level but not the app level because on the lab app level you need a framework to do all the testing right so I believe actually I look into it for actually the of course the media God Arun Nuda he has actually previously look into building traverse CI package for you to do it but I believe it's already kind of out of date like outdated already so but okay I think I can just quickly show you what I have get at least working on the on the package level which is something like let's see ya something like this so basically you just need continuous file what to run basically what I need to do install them I can see I just install the media and then I export the path of the media this one I have tried of like 10 times already cannot get it work so but now at least it works so and then I run a testing framework of the which is a mockup mockup package thing onto it and then it runs successfully at least so but of course my test case fail so ya fail fail not yet but at least it deploy when you commit to your GitHub it will run the test and ya at least it works so ya so far for package level of course at level then you might need another top maybe who has already have experience on the continuous integration that I so the cheap version what we can do is sincere it serve as level so you create a hook which then simply runs on your level machine they the mock so you check it out or whatever after it and then run the mock there do you have all this all the sub there and then you have your version control and you have your perform let's say the cheap version cheap is good because it's fast ya basically as long as it works then ya I think the the easiest way is the best is the best way okay ya we are done thank you so next one yes could you just log into the server and show where it deployed because I'm complete to oh yes actually what actually I don't need to because like it's already tell you where it is in the documentation ya I can show it later they will put it under of course this is like super the I mean like a good documentation as in what actually E he has done it's like just give you one moment it's here basically he will put it under here which is like slash up and your name just now it will be calling me here so basically it's here so ya hey he use some upstart for the configuration is here if you don't like it you can just change it if you want ya you can start of course you can start your server if you want or you can stop it and you can reconfigure it if you have changed your setting environment settings let's say you change your just like one of the one of my project has a has a proprietary flag say okay I need to do a migration so I say sitting if my sitting is true or if you want to migrate then I turn it on and it will migrate all the thing or migrate my script to the server if you don't want it you just turn it off and reconfigure and then deploy it again or you don't need to deploy you just reconfigure it done so ya you don't need to it's like amazing I'm a like ya cool thank you any problem no yes