Docker學習筆記(終)

最后用Docker在服務(wù)器部署一個開源博客系統(tǒng)

首先現(xiàn)在網(wǎng)上下載jpress的包

下載jpress

解壓后編寫Dockerfile文件

編寫dockerfile

接著docker build 制作鏡像,然后docker run運行鏡像。

運行docker容器

接著我們訪問服務(wù)器8080端口(記得開放防火墻,修改安全組)

訪問服務(wù)器

由圖中看到,jpress是可以成功訪問的,但是jpress還依賴mysql,所以需要運行一個mysql容器。

首先從鏡像中心下載一個mysql鏡像。

下載mysql鏡像

在鏡像中心看到mysql鏡像啟動可選參數(shù)。

查看mysql啟動可選參數(shù)

運行docker run命令。

運行mysql

輸入docker ps命令查看容器運行情況,可以看到兩個容器都成功啟動。

查看容器運行情況

接著我們訪問服務(wù)器的8080端口下的jpress,發(fā)現(xiàn)jpress已經(jīng)成功部署。

訪問服務(wù)器8080端口

最后我們需要用域名訪問博客的話,還需要用nginx做一層代理轉(zhuǎn)發(fā)。

首先我們需要啟動nginx容器,然后進入容器內(nèi)部找到nginx配置文件的地址。發(fā)現(xiàn)它在/etc/nginx/conf.d內(nèi)

查看nginx容器內(nèi)部配置文件地址

接著在服務(wù)器上創(chuàng)建一個conf.d文件夾,生成一個default.conf文件,復(fù)制nginx容器內(nèi)部的default.conf文件的內(nèi)容,然后修改里面代理的路徑。

在服務(wù)器創(chuàng)建default.conf

server_name修改成自己的域名,然后再location下加上一句proxy_pass讓nginx代理到宿主機ip的8080端口,這一步實現(xiàn)了nginx轉(zhuǎn)發(fā)請求到tomcat容器。

代理轉(zhuǎn)發(fā)到tomcat

接著輸入sudo docker run -d -p 80:80 -v /develop/jpress/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf hub.c.163.com/library/nginx:latest命令啟動nginx容器,-v 參數(shù)表示把本地的文件掛載到容器內(nèi)部,這樣我們就不需要去到容器內(nèi)部修改配置文件,只需要在本地修改配置文件。

容器啟動后,訪問服務(wù)器ip,由于我域名還沒有備案,所以我是用服務(wù)器ip訪問的,可以看到nginx成功轉(zhuǎn)發(fā)到了tomcat。

轉(zhuǎn)發(fā)到tomcat

最后我們把代理轉(zhuǎn)發(fā)到tomcat容器里面的jpress,繼續(xù)修改本地的default.conf文件,修改如下圖所示。

修改default.conf文件

修改好了defau.conf文件之后,我們繼續(xù)訪問服務(wù)器。

但是出現(xiàn)了一個問題,頁面的樣式失效了,經(jīng)過排查之后發(fā)現(xiàn),原來是我沒有轉(zhuǎn)發(fā)js和css文件。

訪問服務(wù)器jpress

那么我們需要在nginx的配置文件上加上對js和css文件的轉(zhuǎn)發(fā)。

修改完配置文件之后重新啟動nginx容器。

加上js和css還有圖片的轉(zhuǎn)發(fā)

最后,我們?nèi)z查這次轉(zhuǎn)發(fā)是否正確,訪問服務(wù)器,發(fā)現(xiàn)這次代理轉(zhuǎn)發(fā)是成功的!

訪問服務(wù)器

這從從0開始學習docker,了解了docker的原理,docker的優(yōu)勢,一步一步用docker去實現(xiàn)了博客的搭建,發(fā)現(xiàn)docker是真的非常好用,省去了非常多配置服務(wù)器環(huán)境的工作。只需要安裝一個docker,再從鏡像中心拉取別人打包好的鏡像,部署一個項目只需要幾行命令,真的由衷的覺得docker的設(shè)計者太厲害了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容