《程序人生》系列-敖丙教你搭個面試項目

你知道的越多,你不知道的越多前端

前言

羣裏不知道多少次你們說本身的項目沒亮點,在大學沒項目出去後怕找不到工做,問敖丙我實習的時候是怎麼拿的華爲Offer。java

其實大學的項目很簡單不須要太大的難度,由於面試官知道你也沒啥經驗,不會很在乎這個,可是你得有項目這是必要條件,再不濟增刪改查你要比別人6吧,否則找個0經驗的人進去,不是給他本身挖坑?git

並且若是你有個還不錯的履歷,或者你的項目還有一些亮點,那完美了,你的Offer率會拉開同行的仔一大截的。github

丙帥我呢大學作過幾個項目,前些天問了問學妹,還在學校穩定運行着,說實話我有點小驕傲了。
《程序人生》系列-敖丙教你搭個面試項目web

可是說實話,我拿華爲Offer跟這些項目關係不大,大學時候完成的項目徹底是興趣使然,想起當初本身一我的在室友還沒起牀的時候去圖書館,在室友都睡覺的時候還沒回去的時光,個人眼角又溼了。面試

Tip:怎麼拿的Offer我會在《程序人生》系列寫,過年前或者後面出個我大學到如今的心路歷程哈哈。後端

當時在電子閱覽室當管理員,甚至屢次爲了趕進度,在圖書館通宵達旦,好在最後仍是完成了那個項目,本身一我的從前端到服務端,從研發到部署上線。tomcat

你們都知道學校選課用選課系統的時候,不少學校給第三方公司作的系統都很卡,敖丙作的項目就不卡,由於那個時候我就用到Redis了,如今想一想設計思想還算前衛。ruby

好了吹了這麼多,其實就是爲了引出今天的主題,如何從0到1搭建一個能夠外網訪問的項目。服務器

不少小夥伴看到最後要說了,丙丙我要學的是分佈式,纔不要學垃圾的單機系統。

分佈式不就是一個單機的服務構成的,你多起幾個進行RPC通訊不就行了?

正文

雙十二阿里服務器推廣,不買的小夥伴直接跳過這段,不過用來學習真的香,比學生的9.9每個月還便宜。

我幫阿里雲推廣服務器89/年,229/3年,買來送本身,送女友立刻過年再合適不過了,買了搭建個項目給面試官看也香,還能夠熟悉技術棧,我明天會出一個服務器搭建我的項目的教程(老用戶用家人的購買,我用我媽的)。掃碼購買
《程序人生》系列-敖丙教你搭個面試項目

我就用本身的服務器給你們舉例,怎麼從0到1搭建一個學生和新手能夠用來面試的項目,老手也能夠回憶一下本身逝去的青春。

可能有小夥伴疑惑,丙丙爲啥要服務器,本地不行麼?

能夠,固然不是爲了推廣服務器哈,你們能夠不買,我只是闡述一下本身的觀點,由於你們之後出去不免遇到本身操做服務器的狀況,有些公司沒有集成發佈系統,那就須要你親自去機器上操做了。

而後你rm -rf ,好了去財務室領下工資吧,年末了,提早回家過年可還行?
《程序人生》系列-敖丙教你搭個面試項目

開玩笑的哈,只是不少操做你們不常常熟悉其實會都不知道,真正去操做或者面試官問你,熟悉各類操做麼,你說不熟悉,好的回去等消息。

做爲面試官,面試沒多少經驗的你,他更看重你思考的思路,還有你有沒有實操過,務實麼?

帥丙我大學的項目就是常常操做,因此後面很長一段時間的服務器操做,還有Linux命令啥的都仍是不錯的,技術棧搭建起來也是很熟悉,不過最近都是用的公司的工具,命令忘了好多了,須要檢討一下了。

服務器在激活的時候會讓你選系統,這個時候敖丙我我的建議,有點基礎已經熟悉安裝過程和環境配置的同窗能夠直接選擇鏡像,鏡像市場裏面有不少很適合的鏡像,我選的就是帶JDK8,Tomcat8,MySQL的鏡像。

沒搞過的同窗能夠嘗試着選個空白機,而後下好這些東西,一步步去嘗試,我想收穫仍是會有的,跟你在本身電腦搭建的區別你會立刻體會到,這就是爲啥建議你們去服務器操做的緣由之一。

鏡像選擇

《程序人生》系列-敖丙教你搭個面試項目

鏡像記得選不要錢的,通常都是免費的。
《程序人生》系列-敖丙教你搭個面試項目
鏡像市場

選完你在實例就能夠看到本身的服務器了,下面就是帥丙的服務器,竟然跟我同樣帥,天吶。
《程序人生》系列-敖丙教你搭個面試項目

上面都是新搭建的小夥伴,已經有服務器的小夥伴,可是又想換成鏡像怎麼辦?

你們先把服務停掉而後點擊右邊的更換操做系統就行了,會讓你去鏡像市場選的,以前你選了什麼系統均可以換。
《程序人生》系列-敖丙教你搭個面試項目

登陸服務器

能夠直接在管理界面網頁登陸服務器遠程連接,也能夠本身本地用對應的控制檯工具鏈接。

我的推薦本地的控制檯鏈接會好點,每次要登陸服務器都要去網頁很麻煩的。
《程序人生》系列-敖丙教你搭個面試項目
網頁端查看

遠程連接的代碼,記住是你們的公網ip,管理界面看獲得的,要記得你購買的時候配置的密碼,由於這個時候要輸入。

ssh root@123.14.123.8 -p 22 (後面的22是個端口,後面我介紹到)

《程序人生》系列-敖丙教你搭個面試項目
《程序人生》系列-敖丙教你搭個面試項目
本地直連

到這一步的時候,不少小夥伴直接登陸成功,可是以前就已經有服務器的朋友是不發現,出現下面這個頁面了?
《程序人生》系列-敖丙教你搭個面試項目

會出現這些信息是由於,第一次SSH鏈接時,會生成一個認證,儲存在客戶端(也就是用SSH連線其餘電腦的那個,本身操做的那個)中的known_hosts,可是若是服務器驗證過了,認證資訊固然也會更改,服務器端與客戶端不一樣時,就會跳出錯誤啦~所以,只要把電腦中的認證資訊刪除,連線時從新生成,就一切完美啦~要刪除很簡單,只要在客戶端輸入一個指令

ssh-keygen -R +輸入服務器的IP

接下來再次鏈接一次,會出現

Are you sure you want to continue connecting (yes/no)?

輸入yes!
就完成鏈接啦!同時,新的認證也生成了。
《程序人生》系列-敖丙教你搭個面試項目

進去後若是是鏡像的小夥伴會發現自己他準備好的東西都在了,環境都搭建起來了,你們只管直接使用就行了。

可是若是沒有選擇鏡像的朋友,就須要本身搭建一個FTP或者使用傳輸命令去把你下載好的Tomcat、MySQL等傳輸進來安裝好。
《程序人生》系列-敖丙教你搭個面試項目

你們能夠看到還有一個默認密碼文件夾,裏面就有MySQL和FTP的帳號密碼什麼的,不一樣的鏡像可能有差別。

這個在以後你們本身的服務寫代碼的時候,配置鏈接本地的MySQL就是須要這個的。
《程序人生》系列-敖丙教你搭個面試項目

博客網站

此次教你們搭建的項目說大不大,說小吧他啥都有,反正小白和學生確定很適合,是個我的博客網站。

咱們先看看博客的效果,看看你們做爲大學的項目到底合格麼?

我大學作的那個項目比起這個就差點意思了,當時要是有這麼好的UI就很香了!
《程序人生》系列-敖丙教你搭個面試項目
《程序人生》系列-敖丙教你搭個面試項目
《程序人生》系列-敖丙教你搭個面試項目

項目代碼

以我這種直男審美都以爲UI很不錯,你覺得只是UI能夠?那咱們看看項目!

項目的Git地址 https://github.com/halo-dev/halo.git 你們克隆一下就行了。

這個項目自己是Gradle的,不少小夥伴就要說了,啊帥丙我不要,我就要Maven項目的。
《程序人生》系列-敖丙教你搭個面試項目

我只想告訴你們,技多不壓身,目前不少大廠都是Maven項目Gradle項目都佔有很高的比重,你怎麼知道你去的公司會用啥?

你會用進去減小多少學習的成本啊,Leader在旁邊暗自給你比一個大拇指,暗自感嘆:帥丙的讀者,有點東西。

Mac不少小夥伴安裝的時候發現沒有Homebrew 就沒辦法用很方便的命令行去下載安裝Gradle,那簡單咱們安裝一下,用下面的命令。(Windows的朋友直接官網下載一個就行了 https://gradle.org/install

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
《程序人生》系列-敖丙教你搭個面試項目
這個安裝好了,咱們再用下面的命令就能夠就把Gradle安裝好了,是否是比你去下載方便不少?
《程序人生》系列-敖丙教你搭個面試項目

接下來去項目中設置下Gradle地址,這裏介紹的是IDEA的設置
《程序人生》系列-敖丙教你搭個面試項目

爲啥推薦我的博客項目?

不少人問我爲啥推薦這個項目,這個項目看過次代碼了,沒有啥語法錯誤,項目結構徹底標準的項目,註釋也很齊全,代碼的風格挺不錯的,仍是 用了不少新語法和註解。

並且他也不難理解,結構很簡單,前端後端都很簡單,你們看看代碼,看看先後的接口,很快就能適應這個項目了。
《程序人生》系列-敖丙教你搭個面試項目
後端
《程序人生》系列-敖丙教你搭個面試項目
前端

接下來咱們能夠用項目去打個包,或者直接下載敖丙打包好的。(jar包還有war包隨意)

用命令行下載最新的 Halo 安裝包

curl -L https://github.com/halo-dev/halo/releases/download/v1.1.1/halo-1.1.1.jar --output halo-latest.jar

或者

wget https://github.com/halo-dev/halo/releases/download/v1.1.1/halo-1.1.1.jar -O halo-latest.jar

《程序人生》系列-敖丙教你搭個面試項目
文件傳輸呢,帥丙我習慣命令行了,FTP這樣的工具仍是不適應,我就發下命令行是怎麼把jar包從本地傳輸到服務器的。

scp -P 22 /Java/program.war root@123.456.789.987:/usr/server/tomcat7/webapps/

《程序人生》系列-敖丙教你搭個面試項目

咱們進入機器去看一下,文件已經傳輸進來了。
《程序人生》系列-敖丙教你搭個面試項目

由於是一個SpringBoot項目,你只要有JDK直接就能跑起來了。

java -jar halo-latest.jar

《程序人生》系列-敖丙教你搭個面試項目
而後你們訪問下本身的 ip+端口(8090)就能看到項目了

而後不少小夥伴說,渣男,個人怎麼不行?

稍等稍等,敖丙啊還正準備說呢,你們的端口默認就開通了 22 、-一、3389

22是否是很熟悉,就是開頭咱們連接的端口號→ ssh root@123.14.123.8 -p 22 也是由於廠商默認給咱們開通了,咱們才能夠直接連接的。

可是咱們要訪問別的端口,那就去開通嘛,記得入口出口同樣都要開通喲!
《程序人生》系列-敖丙教你搭個面試項目
《程序人生》系列-敖丙教你搭個面試項目
《程序人生》系列-敖丙教你搭個面試項目

而後重啓下機器,從新啓動項目,是否是!!!能夠訪問了???咱們先註冊一下
《程序人生》系列-敖丙教你搭個面試項目
註冊

而後再登陸進去。
《程序人生》系列-敖丙教你搭個面試項目
登陸

能夠看到校驗的異常什麼的都直接日誌拋出的,項目我以爲對於學生和新手來講很香,裏面的代碼風格你們也多適應一下。
《程序人生》系列-敖丙教你搭個面試項目

登陸進去咱們能夠發現,功能很全,博客網站基本的結構都在了。

有個不成熟的猜測,還沒畢業設計的朋友。。。。
《程序人生》系列-敖丙教你搭個面試項目
《程序人生》系列-敖丙教你搭個面試項目

絮叨

看到這裏不少小夥伴可能會說你就是爲了推廣服務器才寫的吧,我說實話有必定的成分,可是更可能是由於我本身的羣裏,常常有不少小夥伴對項目的整個搭建流程不是很熟悉,因此纔出這樣的一篇文章的。

這裏只是一個單機的項目,你們真正部署的時候要體驗別的技術棧能夠去Git上下載下來部署上去,體驗他整個部署流程,中間確定不少不順利的地方相信我,100000%不會一次成功,可是你慢慢摸索的過程就是你學習的收穫的過程。

你們常常問我那些大佬怎麼成長上去的,踩坑和付出大量實踐上去的,別無他法。

我老東家的Leader 95年的,是咱們以前公司前端後端的Leader,技術深度廣度,業務深度都使人髮指,怎麼作到的?

簡單,不斷踩坑學習咯,天天都是凌晨回去,白天開會,晚上寫代碼,甚至還要擠出時間學習新的業務,技術棧也是不斷本身去摸索。

以前他一手帶的我,我跟他太熟悉了,買了早餐剛坐下就去開會討論業務,晚上6點回來就說:誒雞蛋豆漿都冷了啊,而後丟垃圾桶。

學習是一條使人時而喜極若狂、時而鬱鬱寡歡的道路。

成長路上咱們一塊兒共勉。

平常求贊

好了各位,以上就是這篇文章的所有內容了,能看到這裏的人呀,都是人才。

我後面會每週都更新幾篇一線互聯網大廠面試和經常使用技術棧相關的文章,很是感謝人才們能看到這裏,若是這個文章寫得還不錯,以爲「敖丙」我有點東西的話 求點贊 求關注 求分享 對暖男我來講真的 很是有用!!!

創做不易,各位的支持和承認,就是我創做的最大動力,咱們下篇文章見!

敖丙 | 文 【原創】【轉載請聯繫本人】 若是本篇博客有任何錯誤,請批評指教,不勝感激 !

文章每週持續更新,能夠關注個人公衆號「 JavaFamily 」第一時間閱讀和催更(公衆號比博客早一到兩篇喲),本文GitHub https://github.com/JavaFamily 上已經收錄,有一線大廠面試點思惟導圖,歡迎Star和完善,裏面也有我我的聯繫方式有什麼問題也能夠直接找我,也有技術交流羣,咱們一塊兒有點東西。

《程序人生》系列-敖丙教你搭個面試項目

相關文章
相關標籤/搜索