婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > Docker實(shí)踐之python應(yīng)用容器化

Docker實(shí)踐之python應(yīng)用容器化

熱門標(biāo)簽:百度地圖標(biāo)注要不要錢 高德地圖標(biāo)注無(wú)營(yíng)業(yè)執(zhí)照 廣州電銷機(jī)器人系統(tǒng)圖 賀州市地圖標(biāo)注app 智能電話機(jī)器人線路 長(zhǎng)沙開(kāi)福怎么申請(qǐng)400電話 金融行業(yè)外呼線路 東莞人工智能電銷機(jī)器人供應(yīng)商 江蘇電銷外呼防封系統(tǒng)是什么

一、前言

  容器使用沙箱機(jī)制,互相隔離,優(yōu)勢(shì)在于讓各個(gè)部署在容器的里的應(yīng)用互不影響,獨(dú)立運(yùn)行,提供更高的安全性。本文主要介紹python應(yīng)用(django)跑在docker容器里,編寫(xiě)dockerfile實(shí)現(xiàn)鏡像構(gòu)建自動(dòng)化以及docker神器compose。

二、編寫(xiě)Dockerfile文件

官網(wǎng)下載的python鏡像比較精簡(jiǎn),web應(yīng)用相關(guān)依賴還是需要自己安裝的。編寫(xiě)Dockerfile,可以讓你構(gòu)建鏡像的時(shí)候自動(dòng)化。實(shí)例如下:

FROM python:3.6.4

RUN mkdir /code \

&&apt-get update \

&&apt-get -y install freetds-dev \

&&apt-get -y install unixodbc-dev
COPY app /code 
COPY requirements.txt /code
RUN pip install -r /code/requirements.txt -i https://pypi.douban.com/simple
WORKDIR /code

CMD ["/bin/bash","run.sh"]

FROM:Dockerfile中的一個(gè)非常重要的命令,作用是指定一個(gè)基礎(chǔ)鏡像來(lái)進(jìn)行構(gòu)建流程。比如上面指定了python3.6.4作為基礎(chǔ)鏡像,后續(xù)的一切操作都會(huì)以這個(gè)鏡像作為基礎(chǔ)來(lái)進(jìn)行定制,如果不存在,會(huì)從官網(wǎng)下載。FROM必須是Dockerfile首個(gè)命令。

RUN :Dockerfile執(zhí)行命令最核心的部分,在構(gòu)建鏡像的過(guò)程中執(zhí)行參數(shù)。

COPY:復(fù)制文件。COPY <源路徑> <目標(biāo)路徑>

WORKDIR:工作目錄,若不存在,會(huì)自動(dòng)幫你創(chuàng)建。

CMD:容器啟動(dòng)命令,Docker 不是虛擬機(jī),容器就是進(jìn)程。既然是進(jìn)程,那么在啟動(dòng)容器的時(shí)候,需要指定所運(yùn)行的程序及參數(shù)。 CMD 指令就是用于指定默認(rèn)的容器主進(jìn)程的啟動(dòng)命令。如果docker run指定了命令參數(shù),這里的cmd將不會(huì)起作用。例如docker run -it -name redis docker.io/redis /bin/bash,啟動(dòng)容器不會(huì)執(zhí)行dockerfile中的cmd,因?yàn)閐ocker run已經(jīng)指定了命令參數(shù)/bin/bash。

三、構(gòu)建鏡像

docker build[OPTIONS]上下文路徑|URL

  • [OPTIONS]:通常指令包括-t,用來(lái)指定image的名字。-f指定Dockfile的上下文路徑。
  • 上下文路徑|URL:上下文路徑,如果只有一個(gè)小圓點(diǎn) "." 代表當(dāng)前目錄。

docker bulid -t webtest . 命令構(gòu)建一個(gè)名字為 webtest 的鏡像,構(gòu)建完成后返回一個(gè)鏡像id1dfa2905efac。

[root@CentOS webtest]# ls
app Dockerfile requirements.txt run.sh
[root@CentOS webtest]# docker build -t webtest . 
...
...
...
Removing intermediate container 9c510e88e659
Step 6/6 : CMD /bin/bash run.sh
---> Running in 0bd29255c648
---> 1dfa2905efac
Removing intermediate container 0bd29255c648
Successfully built 1dfa2905efac
  • app:django項(xiàng)目
  • Dockerfile
  • requirements.txt是項(xiàng)目運(yùn)行所需要的python庫(kù)
    • Django
    • djangorestframework
    • pyDes
    • PyMySQL
    • redis
    • requests
    • pymssql
    • pyodbc
    • paramiko
    • psutil

run.sh是運(yùn)行容器時(shí)需要調(diào)用的shell腳本

python /code/app/manage.py runserver 0.0.0.0:8000

啟動(dòng)容器,運(yùn)行剛才構(gòu)建的鏡像。

docker run -it -p 6500:8000 -v /home/code/webtest:/code --name web --restart always --privileged=true webtest

[root@CentOS webtest]# docker run -it -p 6500:8000 -v /home/code/webtest:/code --name web --restart always --privileged=true webtest
Performing system checks...

System check identified no issues (0 silenced).

You have 15 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

August 09, 2018 - 09:56:51
Django version 2.1, using settings 'ShiHangTool.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.

-p:把容器的8000端口映射到宿主機(jī)6500

-v:主機(jī)的目錄/home/code/webtest映射到容器的目錄/code

--name:給容器起個(gè)名字web,webtest是我們剛剛構(gòu)建的鏡像

--restart:always 容器退出時(shí)總是重啟

--privileged=true:執(zhí)行容器內(nèi)文件需要的權(quán)限

輸入 ip:6500/Home/OrderSettle-K8S/

運(yùn)行成功!

五、compose

是否覺(jué)得上面的操作太過(guò)復(fù)雜,如果能自動(dòng)化部署就好了。不要著急,compose能夠幫到你

1.簡(jiǎn)介:

compose是docker官方開(kāi)源項(xiàng)目,用于docker集群的快速編排。compose通過(guò)docker-compose.yml文件定義和運(yùn)行一個(gè)或多個(gè)容器。是fig的升級(jí)版。

2.安裝:

compose是通過(guò)python編寫(xiě)的,調(diào)用了docker提供的API對(duì)容器進(jìn)行管理。so 可以通過(guò)python管理工具pip來(lái)安裝

pip install docker-compose

3.編寫(xiě)docker-compose.yml文件

這是docker-compose.yml主模板格式

version: '3'
services:
  web1:
    build: .
    image: web1
    ports:
      - "7500:8000"
    volumes: 
      - /home/code/webtest:/code
    privileged: true
    restart: always

4.運(yùn)行compose項(xiàng)目

將 dockerfile、requirements.txt、docker-compose.yml、app 文件夾放在同一目錄,運(yùn)行命令 docker-compose up

[root@CentOS webtest]# docker-compose up
Creating network "webtest_default" with the default driver
Building web1
Step 1/6 : FROM python3.6.4-dev
 ---> ca46b1ed99ab
Step 2/6 : COPY app /code
 ---> f59b9540f8ab
Removing intermediate container e987c66b51f5
Step 3/6 : COPY requirements.txt /code
 ---> 2095b64882ac
Removing intermediate container e3099b386727
...
...
...

運(yùn)行完成后,docker ps查看剛剛啟動(dòng)的容器web1,已經(jīng)在運(yùn)行啦

[root@CentOS ~]# docker ps
CONTAINER ID    IMAGE          COMMAND         CREATED       STATUS       PORTS                       NAMES
eeab6b5a993b    web1           "/bin/bash run.sh"    About a minute ago  Up 59 seconds    0.0.0.0:7500->8000/tcp               webtest_web1_1
5fb51ce5a51c    webtest           "/bin/bash run.sh"    23 hours ago     Up About an hour  0.0.0.0:6500->8000/tcp               web

5.總結(jié)

compose把構(gòu)建鏡像,運(yùn)行容器兩個(gè)步驟放在一個(gè)yml文件里配置,實(shí)現(xiàn)自動(dòng)化部署。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:玉樹(shù) 廊坊 滄州 張家界 北京 松原 永州 洛陽(yáng)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Docker實(shí)踐之python應(yīng)用容器化》,本文關(guān)鍵詞  Docker,實(shí)踐,之,python,應(yīng)用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Docker實(shí)踐之python應(yīng)用容器化》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Docker實(shí)踐之python應(yīng)用容器化的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人午夜视频在线观看| 91在线国内视频| 美女视频黄久久| 亚洲成人免费影院| 亚洲欧美怡红院| 久久久www成人免费毛片麻豆| 精品一区二区三区在线视频| 久久精品一二三| 国产精品白丝jk黑袜喷水| 日韩va亚洲va欧美va久久| 欧美一级理论性理论a| 高清av一区二区| 综合久久久久久| 精品在线亚洲视频| 精品久久久久久久久久久久久久久| 日韩av成人高清| 欧美性感一区二区三区| 欧美国产一区视频在线观看| 久久爱另类一区二区小说| 91蜜桃传媒精品久久久一区二区| 精品日韩一区二区三区| 成人美女视频在线观看18| 日韩欧美一区在线| 亚洲成人三级小说| 欧美少妇bbb| 亚洲成人在线免费| 欧美性猛交xxxxxx富婆| 视频一区二区不卡| 7777精品伊人久久久大香线蕉| 亚洲一区二区三区国产| 亚洲国产成人精品视频| 91精品久久久久久久99蜜桃| 久久66热偷产精品| 久久久久久久久蜜桃| 亚洲一区免费在线观看| 亚洲久草在线视频| 国产拍欧美日韩视频二区| 337p亚洲精品色噜噜狠狠| 中文字幕不卡三区| 精品无人区卡一卡二卡三乱码免费卡 | 欧美男同性恋视频网站| 国产偷国产偷亚洲高清人白洁| 亚洲小说欧美激情另类| 欧美在线观看禁18| 一区二区三区在线不卡| 成人激情电影免费在线观看| 国产午夜精品理论片a级大结局| 日本欧美一区二区三区乱码| 欧美日韩国产在线播放网站| 亚洲天堂网中文字| 欧美午夜一区二区| 亚洲成a人v欧美综合天堂| 一本到不卡免费一区二区| 一区二区三区在线看| 欧美日韩一区在线| 久久精品国产精品青草| 精品国产精品一区二区夜夜嗨| 国产女主播视频一区二区| 国产精品天干天干在观线| 亚洲猫色日本管| aaa亚洲精品| 久久精品国产亚洲高清剧情介绍 | 欧美精品777| 亚洲欧美一区二区久久| 懂色av中文一区二区三区| 国产清纯白嫩初高生在线观看91 | 在线不卡的av| 亚洲成人免费视频| 日韩视频一区在线观看| 国产一区二区免费视频| 亚洲天堂精品在线观看| 国产精品中文字幕日韩精品| 琪琪一区二区三区| 日韩高清电影一区| 国产盗摄精品一区二区三区在线| 91蜜桃视频在线| 国产精品久久久久永久免费观看| 日韩av网站在线观看| 欧美日韩和欧美的一区二区| 日韩欧美色综合网站| 97精品国产露脸对白| 成人av在线资源网站| 成人黄色一级视频| 91小视频在线免费看| 91免费看片在线观看| 在线观看一区日韩| 欧美日韩国产精选| 精品久久久久久久久久久久久久久| 日韩一级欧美一级| 国产女主播在线一区二区| 国产欧美日韩精品一区| 国产精品久久久久久亚洲毛片| 国产欧美日本一区二区三区| 欧美日韩成人一区| 国产精品久久久久久久久图文区| 黄色日韩网站视频| 色婷婷久久久久swag精品 | 精品亚洲porn| 精品国产乱码久久久久久免费 | 亚洲一区二区av在线| 亚洲人被黑人高潮完整版| 欧洲一区二区av| 成人av电影在线网| 欧美天天综合网| 精品福利视频一区二区三区| 国产性天天综合网| 国产精品国产a级| 久久爱另类一区二区小说| 99国产精品久久| 欧美三电影在线| 国产精品理伦片| 奇米精品一区二区三区在线观看| 国产一区二区影院| 欧美色图一区二区三区| 久久只精品国产| 一级中文字幕一区二区| 高清成人免费视频| 在线综合视频播放| 亚洲综合偷拍欧美一区色| 国产成人午夜电影网| 欧美麻豆精品久久久久久| 亚洲男女一区二区三区| www.亚洲国产| 中文字幕欧美国产| 国内精品在线播放| 日韩视频免费观看高清完整版| 亚洲一区二区三区在线播放| 91在线观看视频| 成人免费在线视频| 成人午夜电影小说| 日本一区二区三区国色天香| 国内精品视频666| 久久久久久久久久久久电影| 久久国产剧场电影| 日韩一区二区三区免费看| 亚洲国产色一区| 欧美片在线播放| 日韩av一二三| 日韩一区二区在线看| 美女免费视频一区二区| 欧美一级一级性生活免费录像| 日本视频免费一区| 日韩欧美在线不卡| 蜜臀av亚洲一区中文字幕| 欧美三级日韩三级| 日本中文在线一区| 日韩一级片在线观看| 精油按摩中文字幕久久| 久久久久久久久岛国免费| 久草这里只有精品视频| 久久综合99re88久久爱| 成人激情视频网站| 一区二区在线观看不卡| 欧美影院午夜播放| 日本欧美一区二区三区乱码| 欧美刺激午夜性久久久久久久| 国产精品亚洲午夜一区二区三区| 国产精品国产三级国产有无不卡| 一本一道久久a久久精品| 视频在线在亚洲| 国产清纯美女被跳蛋高潮一区二区久久w| 粉嫩aⅴ一区二区三区四区| 国产女人aaa级久久久级| 91免费在线播放| 日韩影院在线观看| 国产欧美一区二区三区在线老狼| 色成人在线视频| 日韩国产高清在线| 欧美韩国一区二区| 欧美日韩视频在线第一区| 久久精品国产久精国产| 中文字幕亚洲视频| 日韩欧美在线网站| 欧美亚洲愉拍一区二区| 国产一区二区三区免费播放| 自拍偷拍国产精品| 精品久久久久久久久久久久久久久| 精品美女在线观看| 成人美女视频在线看| 秋霞电影一区二区| 综合网在线视频| 欧美xfplay| 欧美酷刑日本凌虐凌虐| 成人av影视在线观看| 日本亚洲欧美天堂免费| 亚洲青青青在线视频| 国产欧美日韩三区| 欧美一区二区在线观看| 在线观看日韩精品| 成人污视频在线观看| 天堂va蜜桃一区二区三区| 中文字幕佐山爱一区二区免费| 欧美精品一区二区三区视频| 欧美日韩高清一区| 91麻豆成人久久精品二区三区| 国产成人欧美日韩在线电影| 麻豆91免费看| 天堂蜜桃91精品| 天天综合色天天综合色h| 亚洲精品视频观看|