為了記住這些坑,我來寫這篇筆記。
1.Docker部署
(1)在rancher里添加應用
在名稱欄里填上你的應用名,描述可以寫你的應用是干什么的,然后點擊創建。
(2)然后在新添加的應用里添加服務(就是你的docker)
然后按照步驟填寫名稱描述,鏡像,其中有一個選項 勾選的話,它每次都會拉取本地的鏡像,但是不能拉取網上的鏡像,這個問題我還沒有解決,目前還不知道是什么原因。
(2)添加卷時,可以在外部映射一個卷用來保存你的docker新添加的一些必須文件,如Python的一些包(sitepackages)映射在外面,這樣docker的image就不會那么大,不然會超級大,遷移不方便,還有就是一層一層的commit會讓后面使用這個image的用戶不知道這個里面到底有哪些東西,對新用戶來說,這個是一個黑箱。
(3)網絡配置為托管,這樣設置很方便。(好吧,我偷懶了)
如果你要限制docker的內存和cpu可以在安全/主機中設置,我就不詳細說了。可以自行google,百度。
2.Docker中的Django怎么開啟服務
這個問題,一直坑着我,用了,很多方法。最后,通過一位大神的指導,試了一下,果然可以了。
(1)在Docker中新建Django的項目和在外面創建是一樣的,我就略過了。
(2)怎么開啟服務呢?
首先,進入docker命令行。
(2)然后,進入項目目錄中。在項目的根目錄下,輸入 python manage.py runserver webcharts4:8585
紅色字可以忽略,是因為我的數據庫變更,而項目沒有及時更新,沒有migrate導致的。
這樣,我們來看看外部怎么訪問網站。
訪問是可以的。但是,可能會有人問,為什么你的域名不是webcharts4呢?因為啊,我在創建docker時,將主機的8585端口映射在了docker的8585端口上了,當在docker內開啟8585端口時,docker分配的ip一直變,但是docker名是不變的,所以我用了docker名作為我的開啟服務的ip。
如果還有什么疑問,歡迎留言,一起探討問題吧。