日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

目錄
  • docker概念
  • docker容器對比虛擬機(jī)
  • docker鏡像、容器和倉庫
  • docker安裝
  • docker使用
  • docker常見命令
  • 單容器部署最基本的django
  • 小結(jié)

docker概念

docker是一種容器技術(shù),用來創(chuàng)造獨(dú)立的軟件容器,屬于操作系統(tǒng)的虛擬化技術(shù),隔離的進(jìn)程獨(dú)立于宿主和其他隔離的進(jìn)程。

docker容器對比虛擬機(jī)

虛擬機(jī):需要有必要的二進(jìn)制庫和完整的操作系統(tǒng),并且占據(jù)所有預(yù)分配的資源。

docker容器:與宿主共享操作系統(tǒng),可以實(shí)現(xiàn)資源的動態(tài)分配,在用戶空間以分離的進(jìn)程運(yùn)行

docker鏡像、容器和倉庫

鏡像是文件,容器是進(jìn)程;他們之間的關(guān)系像是類和實(shí)例化對象的關(guān)系,一個類可以有多個實(shí)例化對象。而倉庫是一個其中的存儲、分發(fā)鏡像的服務(wù)。docker pull是從倉庫下載docker鏡像到本地,docker run是創(chuàng)建一個容器并運(yùn)行一個命令,docker exec -it是在運(yùn)行的容器中執(zhí)行命令

docker安裝

根據(jù)自己的系統(tǒng)選擇安裝方式docker安裝

docker使用

1.簡單嘗試:使用docker pull nginx:latest下載一個最新的nginx鏡像。

2.使用命令docker run --name my-nginx -p 80:80 -d nginx:latest,創(chuàng)建一個容器,命令為my-nginx,-d表示后臺運(yùn)行并返回容器的ID,-p將端口指定到宿主的80端口。打開瀏覽器訪問80端口

使用docker部署django的詳細(xì)步驟

3.使用命令docker exec -it my-nginx bash開啟一個交互模式終端

其中第一步不是必須,在執(zhí)行docker run命令時(shí)找不到鏡像時(shí)會自動從倉庫拉取

docker常見命令

命令 作用
docker pull 從倉庫下載鏡像
docker images 查看所有本地鏡像
docker rmi 刪除鏡像
docker run 創(chuàng)建容器并執(zhí)行命令
docker rm 刪除容器
docker stop 停止容器,同理還有restart、start
docker logs 查看容器日志
docker exec bash 進(jìn)入容器中執(zhí)行其他命令

單容器部署最基本的django

嘗試部署最基本的django項(xiàng)目

創(chuàng)建django項(xiàng)目

命令行輸入django-admin startproject mysite,進(jìn)入創(chuàng)建的django文件夾中我們可以看見整個項(xiàng)目結(jié)構(gòu)

使用docker部署django的詳細(xì)步驟

此時(shí)我需要在項(xiàng)目根目錄下創(chuàng)建Dockerfile文件,該文件用于生成docker鏡像,內(nèi)容如下

# 建立 python3.7 環(huán)境
FROM python:3.7

# 鏡像作者
MAINTAINER LALALA

# 設(shè)置 python 環(huán)境變量
ENV PYTHONUNBUFFERED 1

# 設(shè)置pip源為國內(nèi)源
COPY pip.conf /root/.pip/pip.conf

# 在容器內(nèi)創(chuàng)建mysite文件夾
RUN mkdir -p /var/www/html/mysite

# 設(shè)置容器內(nèi)工作目錄
WORKDIR /var/www/html/mysite

# 將當(dāng)前目錄文件加入到容器工作目錄中(. 表示當(dāng)前宿主機(jī)目錄)
ADD . /var/www/html/mysite

# pip安裝依賴
RUN pip install -r requirements.txt

繼續(xù)在項(xiàng)目根目錄下創(chuàng)建pip.conf文件,用于修改pip鏡像源

[global] 
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com

最后創(chuàng)建requirements.txt文件,因?yàn)橹恍枰猟jango,只需要安裝django即可

Django==3.2.12

項(xiàng)目內(nèi)容設(shè)置完后,在項(xiàng)目根目錄輸入命令docker build -t django_docker_img:v1 .創(chuàng)建鏡像,使用命令docker images查看鏡像,可以看見剛剛創(chuàng)建的鏡像

使用docker部署django的詳細(xì)步驟

Dockerfile中第一行是from python:3.7,也就是在創(chuàng)建過程中會從docker倉庫中拉取python:3.7的鏡像,速度過慢的話請修改你的docker鏡像源,可以直接在docker界面處修改,https://b2bk1nge.mirror.aliyuncs.com

使用docker部署django的詳細(xì)步驟

輸入命令docker run -it -d -p 80:8000 --name mysite django_docker_img:v1創(chuàng)建并運(yùn)行容器,此命名將該容器映射到本地80端口,使用docker ps查看運(yùn)行情況。然后使用命令docker exec -it mysite bash進(jìn)入容器內(nèi)部,會發(fā)現(xiàn)此刻處于Dockerfile中設(shè)置的工作目錄,該目錄下內(nèi)容即為項(xiàng)目文件內(nèi)容,pip已安裝requirement.txt中的依賴

使用docker部署django的詳細(xì)步驟

最后在容器的bash中執(zhí)行下面命令,完成數(shù)據(jù)庫遷移和運(yùn)行django項(xiàng)目

python manage.py makemigrations
python manage.py migrate
python manage.py runserver 0.0.0.0:8000 # 務(wù)必寫0.0.0.0,如果是127.0.0.1是容器的環(huán)回地址,會導(dǎo)致在宿主機(jī)中無法訪問

此時(shí)在瀏覽器中訪問http://127.0.0.1/可以看到運(yùn)行的django項(xiàng)目

使用docker部署django的詳細(xì)步驟

小結(jié)

本篇文章主要是嘗試性的使用docker來部署項(xiàng)目,學(xué)習(xí)過程中也是踩了一些坑,目前來看使用docker安裝鏡像很方便,之前在安裝需要的軟件時(shí),往往會遇上各種各樣的小bug,而使用docker后只需要簡單地拉取鏡像創(chuàng)建容器,兩行命令解決所有煩惱。

分享到:
標(biāo)簽:Docker 服務(wù)器 步驟 詳細(xì) 部署
用戶無頭像

網(wǎng)友整理

注冊時(shí)間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定