Python3.6 使用 Docker 快速部署 Django2.0 專案到阿里雲伺服器上
一、前言
二、常規操作
預設你已經安裝好 docker
2.1.示例專案基本結構
其實是使用 PyCharm
剛剛建立的 Django 空專案
2.2.dockerfile
FROM python:3.6
這裡指定 Python 版本為目前穩定的 python3.6
"0.0.0.0:8080"
這裡筆者開啟容器中 8080 埠,下面開啟容器就就要對映到這個埠
FROM python:3.6
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY pip.conf /root/.pip/pip.conf
COPY requirements.txt /usr/src/app/
RUN pip install -r /usr/src/app/requirements.txt
RUN rm -rf /usr/src/app
COPY . /usr/src/app
CMD [ "python", "./manage.py", "runserver", "0.0.0.0:8080"]
2.3.pip conf
這裡是為了使用映象 pip install 相關依賴,速度快的起飛
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
2.4.requirements.txt
Django==2.0.7
pytz==2018.5
這裡看到有些網友手動去去寫,其實沒有必要,使用如下命令即可生成到專案中
pip3 freeze > requirements.txt
2.5.上傳專案到雲伺服器(Centos7)
這裡強調一點:虛擬環境不必加進去
因為 docker 會自動去下載依賴
而且虛擬環境佔用 100M+- 的空間,上傳的時間夠等 5+ 分鐘
2.6.伺服器docker操作
1.生成映象:到了專案和 dockerfile 同一級的目錄,也就是上圖的目錄
(注意後面的 .
不要省略)
docker build -t my-python -app .
2.開啟容器:
這裡的 8080 由上面的 dockerfile 決定
這裡的 120.79.197.130 為自己伺服器公網 ip 地址
# http://120.79.197.130:8080
docker run -it --rm -p 8080:8080 --name djapp my-python-app:latest
# 或者 http://120.79.197.130:8000(埠號隨意對映,但要注意開啟對應安全組)
docker run -it --rm -p 8000:8080 --name djapp my-python-app:latest
2.7.效果
三、其他
使用 dockerfile buid 映象的時候,映象大小動不動就 800+ M,漫長的等待,使筆者切身感受到使用國內映象下載相關依賴的重要性。
雲伺服器主要為騰訊雲、阿里雲,這裡介紹兩種方案
3.1.騰訊雲
使用的 centos 伺服器
這是最簡單的,執行如下命令即可
#使用騰訊雲dockerhub加速器適用於 Centos7 版本。
#修改 Docker 配置檔案
vi /etc/sysconfig/docker
OPTIONS='--registry-mirror=https://mirror.ccs.tencentyun.com'
systemctl restart docker
3.2.阿里雲
3.2.1.獲取加速地址
1、先進入阿里雲開發者平臺
2、點選管理中心
3.2.2.修改 centos 的配置
cd /etc/docker/
vi daemon.json
{
"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"] # 填2.1中獲取的地址
}
#重新載入daemon
systemctl daemon-reload
#重啟docker生效
systemctl restart docker
如:
vi
中
四、問題
無法訪問
修改 settings.py
,允許其他 ip 訪問
ALLOWED_HOSTS = ["*"]
五、參考文章
相關推薦
Python3.6 使用 Docker 快速部署 Django2.0 專案到阿里雲伺服器上
一、前言 二、常規操作 預設你已經安裝好 docker 2.1.示例專案基本結構 其實是使用 PyCharm 剛剛建立的 Django 空專案 2.2.dockerfile FROM python:3.6 這裡指定 Python
ubuntu環境下Apache2部署django2.0專案及問題解答
關於使用阿帕奇部署django專案的帖子網上有很多,但是部署時還是還有錯誤,那麼我把易錯點進一步總結,方便大家部署,這裡我才用本機部署,線上部署是一樣的原理 準備階段: 1.環境:ubuntu+python3.5.2+django2.0 2.準備一個寫好的django專案,通過命令pyt
部署java-web專案到linux伺服器上
記錄自己部署javaweb專案的基本操作以及遇到的坑 我用的是eclipse,匯出war包。 (這裡有個巨坑,eclipse有專案快取,所以你改的東西可能沒有用,tomcat伺服器也有快取,所以匯出的時候記得清一下快取) 在linux伺服器上安裝配置tomcat伺服器,把
laravel專案使用appnode部署linux系統到阿里雲伺服器流程記錄(待補充)
使用 SSH 連線工具,如 PuTTY、XShell、SecureCRT 等,連線 Linux 伺服器後(阿里雲伺服器命令列內直接輸入appnode安裝命令,版本:mysql選5.7、php選7.2),安裝appnode 在阿里雲安全組中開啟需要的埠,如appnode的8888、redis6379、
在阿里雲伺服器上快速搭建JavaWeb環境(安裝JDK、Tomcat、MySQL)+Intellij IDEA遠端部署除錯tomcat
首先介紹一下我的的伺服器的系統是Ubuntu 16.04 64位 ide用了Intellij IDEA JDK8 Tomcat8 MySQL5.7 一、先下載JDK 8 1、JDK8 # sudo apt-get install openjdk-8
阿里雲伺服器上部署tomcat,並進行訪問測試
要求將一個專案部署到新買的阿里雲伺服器上。使用xshell遠端連線(連線使用的ip是例項的公網ip)。 在部署配置tomcat之前首先進行JDK的部署,先說明一下,我使用的CentOS7.4. 選擇JDK1.
DOCKER 建立 配置 執行 NGINX 環境(阿里雲伺服器)
1. 拉取nginx #拉取nginx的最新穩定版 sudo docker pull nginx 2.Docker建立Nginx容器並執行 #1.對映埠 80:80 ===>443:443 埠 #2.配置資料儲存路徑 /opt/nginx/conf.d :/etc/nginx/c
使用Travis自動部署前端頁面到阿里雲伺服器
使用GitHub管理程式碼,寫完之後經常需要打包部署到阿里雲伺服器,於是開始學習使用travis CI。 中間過程參考如下 持續整合服務 Travis CI 教程 http://www.ruanyifeng.com/blog/2017/12/travis_ci_tutorial.ht
本地執行springboot專案的jar包或阿里雲伺服器上導致,no main異常Exception in thread "main" java.lang.ClassNotFoundException
執行打好的jar包,出現如下異常 首先開啟打好的jar包,出現如下目錄 開啟META-INF目錄,中的MANIFEST.MF檔案,如下 中是否有如下的路徑,Start-Class,如果有,確保是全限定名+啟動類嘛 例如我異常時的Start-Class路徑為
Linux學習2-在阿里雲伺服器上部署禪道環境
前言 以前出去面試總會被問到:測試環境怎麼搭建?剛工作1-2年不會搭建測試環境還可以原諒自己,工作3-5年後如果還是對測試環境搭建一無所知,面試官會一臉的鄙視。 本篇以最簡單的禪道環境搭建為例,學習下如何在Linux上搭建禪道環境。 環境準備: 1.一臺Linux伺服器, 作業系統: CentOS 7.4
Mxonline在阿里雲伺服器上的部署(uwsgi nginx)
我的專案結構 1. 執行`python manage.py migrate`命令,將遷移檔案,對映到資料庫中,建立相應的表。 進入資料庫 use mxonline資料庫 source /home/Mxo
釋出在阿里雲伺服器上的專案如何連線雲資料庫
1.首先需要申請雲資料庫的外網地址2.在右上角的白名單裡新增雲伺服器的外網地址注:如果想用本地的Navicat連線資料庫還需要在白名單新增本地的IP註冊一個雲資料庫賬號,然後就可以用這個賬號進行連線資料庫了把配置檔案裡的localhost改成申請的外網地址, root和ad
解決在阿里雲伺服器上部署Tomcat外網不能訪問
問題:在阿里雲伺服器上部署了Tomcat,修改了一下三處重新部署Tomcat外網還是不能訪問解決辦法:進入阿里雲伺服器管理控制檯->雲伺服器ECS->安全組,如下圖所示新增配置和Tomcat
阿里雲伺服器上安裝MySQL 5.6資料庫(阿里雲伺服器配置MySQL資料庫,第二步)
2、安裝MySQL 5.6(我的安裝路徑D:\MySQL\MySQL Server 5.6)3、在MySQL安裝完成以後,需要配置環境變數,電腦--屬性--高階--環境變數 選擇Path,在其後新增你的MySQL bin資料夾的路徑(PATH=...;D:\MySQL\My
docker 安裝MySQL遠端連線(阿里雲伺服器)
1. 下載Mysql的Docker映象:$ docker search mysql (搜尋mysql映象) $ docker pull mysql (下載mysql映象,預設最新版本) 2. 執行映象,設定root賬號初始密碼(123456),對映本地宿主機埠3306到Docker埠3306。測試過程沒有
阿里雲伺服器上一次Spring Boot工程的簡單部署
我最近在阿里雲上釋出一個網站,沒有配置Jenkins環境,所以釋出我都用手動的方式去完成。 這裡我是在本機打好了jar包,然後將Spring Boot的jar包通過scp傳送到伺服器,確保專案中配置的
阿里雲伺服器上部署war包
1 :購買阿里雲伺服器,學生還能優惠,因為覺得自己對Linux不是特別熟,又怕自己搞不定它失去學習興趣,所以我選擇了windows版本的,開始部署以後就賊後悔 2 :伺服器就相當於另外的一臺電腦,想要
在阿里雲伺服器上部署tomcat7
一:在官網下載Tomcat 二:將Tomcat壓縮好的檔案上傳到你要放置的目錄 三:最重要的一點,配置環境(上面兩步都比較簡單,就不詳寫了) [[email protected] tomcat7]# cd ~ [[email protected] ~]#
將javaweb專案釋出到阿里雲伺服器上
1.首先將專案匯出為.war檔案 2.在伺服器上安裝配置jdk,tomcat,mysql 3.將匯出的war檔案放到tomcat目錄下的webapps下,然後回到tomcat的bin目錄下,點選start,啟動tomcat 服務 4.最後在瀏覽器上輸入你的阿里雲伺服
windows 下通過apache2.4 部署django2.0.4專案(小專案或測試學習)
#宣告:我說是原創不一定是原創,你們誰發現我盜了,跟我留言。tks.#能力有限,掉坑裡爬了老久才爬出來。視訊教程看N遍...不說了,說多了就是血淚!!(為自己備份記憶)《持續更新》先說重點(大家都知道瀏覽器只能對字串進行識別,所以web服務返回的都是字串,隨著瀏覽器功能增加,