国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

使用Dockerfile構(gòu)建python項(xiàng)目鏡像(flask框架+redis+環(huán)境變量)

這篇具有很好參考價(jià)值的文章主要介紹了使用Dockerfile構(gòu)建python項(xiàng)目鏡像(flask框架+redis+環(huán)境變量)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1、設(shè)置環(huán)境變量

有時(shí)候如連接redis的url可能發(fā)生變化等,這時(shí)候就需要把一些變量放在環(huán)境變量中。

1.1 啟動(dòng)設(shè)置docker run --env

????????使用--env-e是一樣效果的。

1.1.1 配置Dockerfile文件

FROM python:3.9.16-slim

WORKDIR /src
ENV FLASK_APP=app.py
COPY app.py /src/app.py
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt

EXPOSE 5000
CMD ["flask", "run", "-h", "0.0.0.0"]

1.1.2 編寫python示例程序

示例代碼:

import os
from flask import Flask
from redis import StrictRedis

redis_url = os.environ.get('REDIS_URL', 'redis://127.0.0.1:6379/1')

app = Flask(__name__)
s = StrictRedis.from_url(redis_url)


@app.route('/index')
def index():
    count = s.incr('count', 1)
    return f"您是第{count}個(gè)人訪問此頁(yè)面!"


if __name__ == '__main__':
    app.run()

1.1.3 構(gòu)建鏡像

????????首先將python代碼和dockerfile文件上傳到已經(jīng)安裝了docker的服務(wù)器。

docker python 環(huán)境變量,Docker,flask,python,docker

開始構(gòu)建鏡像:

docker image build -f ./Dockerfile -t flask_redis_env0 .

docker python 環(huán)境變量,Docker,flask,python,docker

查看打包好的鏡像:

docker python 環(huán)境變量,Docker,flask,python,docker

1.1.4 啟動(dòng)鏡像

docker run -d --name my_flask_redis_env0 -p 5002:5000 --env REDIS_URL=redis://default:root@192.168.124.49:6380/1 flask_redis_env0

docker python 環(huán)境變量,Docker,flask,python,docker

瀏覽器進(jìn)行訪問:

docker python 環(huán)境變量,Docker,flask,python,docker

1.2 打包設(shè)置dockerfile?

????????在通過Dockerfile打包鏡像的時(shí)候可以配置環(huán)境變量。

1.2.1 配置Dockerfile文件

docker python 環(huán)境變量,Docker,flask,python,docker

FROM python:3.9.16-slim

WORKDIR /src
ENV FLASK_APP=app.py
ENV REDIS_URL=redis://default:root@192.168.124.49:6380/1
COPY app.py /src/app.py
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt

EXPOSE 5000
CMD ["flask", "run", "-h", "0.0.0.0"]

1.2.2 編寫python示例程序

示例代碼:

import os
from flask import Flask
from redis import StrictRedis

redis_url = os.environ.get('REDIS_URL', 'redis://127.0.0.1:6379/1')

app = Flask(__name__)
s = StrictRedis.from_url(redis_url)


@app.route('/index')
def index():
    count = s.incr('count', 1)
    return f"您是第{count}個(gè)人訪問此頁(yè)面!"


if __name__ == '__main__':
    app.run()

1.2.3 構(gòu)建鏡像

????????首先將python代碼和dockerfile文件上傳到已經(jīng)安裝了docker的服務(wù)器。

docker python 環(huán)境變量,Docker,flask,python,docker

開始構(gòu)建鏡像:

docker image build -f ./Dockerfile -t flask_redis_env .

docker python 環(huán)境變量,Docker,flask,python,docker

docker python 環(huán)境變量,Docker,flask,python,docker

查看打包好的鏡像:

docker python 環(huán)境變量,Docker,flask,python,docker

1.2.4 啟動(dòng)鏡像

docker run -d --name my_flask_redis_env -p 5001:5000 flask_redis_env

docker python 環(huán)境變量,Docker,flask,python,docker

瀏覽器進(jìn)行訪問:

docker python 環(huán)境變量,Docker,flask,python,docker

1.3 啟動(dòng)加載文件docker run --env-file

????????先把環(huán)境變量配置文件放在一個(gè)文件中。

docker python 環(huán)境變量,Docker,flask,python,docker

?1.3.1 配置Dockerfile文件

docker python 環(huán)境變量,Docker,flask,python,docker

FROM python:3.9.16-slim

WORKDIR /src
ENV FLASK_APP=app.py
COPY app.py /src/app.py
COPY env_vairable.txt /src/env_vairable.txt
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt

EXPOSE 5000
CMD ["flask", "run", "-h", "0.0.0.0"]

1.3.2 編寫python示例程序

示例代碼:

import os
from flask import Flask
from redis import StrictRedis

redis_url = os.environ.get('REDIS_URL', 'redis://127.0.0.1:6379/1')

app = Flask(__name__)
s = StrictRedis.from_url(redis_url)


@app.route('/index')
def index():
    count = s.incr('count', 1)
    return f"您是第{count}個(gè)人訪問此頁(yè)面!"


if __name__ == '__main__':
    app.run()

1.3.3 構(gòu)建鏡像

????????首先將python代碼和dockerfile文件上傳到已經(jīng)安裝了docker的服務(wù)器。

docker python 環(huán)境變量,Docker,flask,python,docker

開始構(gòu)建鏡像:

docker image build -f ./Dockerfile -t flask_redis_env2 .

docker python 環(huán)境變量,Docker,flask,python,docker

docker python 環(huán)境變量,Docker,flask,python,docker

查看打包好的鏡像:

docker python 環(huán)境變量,Docker,flask,python,docker

1.3.4 啟動(dòng)鏡像

docker run -d --name my_flask_redis_env2 -p 5003:5000 --env-file env_vairable.txt flask_redis_env2

docker python 環(huán)境變量,Docker,flask,python,docker

瀏覽器進(jìn)行訪問:

docker python 環(huán)境變量,Docker,flask,python,docker

2、查看環(huán)境變量

2.1 使用docker inspect

????????通過docker inspect命令不僅能查看環(huán)境變量,還能查看容器其它相關(guān)信息,非常豐富,以Json格式輸出。

docker inspect my_flask_redis_env

docker python 環(huán)境變量,Docker,flask,python,docker

docker python 環(huán)境變量,Docker,flask,python,docker

可以通過grep命令過濾一下:

docker python 環(huán)境變量,Docker,flask,python,docker

2.2 使用docker exec env

????????這種方式獲取的環(huán)境變量就跟獲取linux環(huán)境變量是一樣的。只是在容器跑了個(gè)env命令而已。

docker exec my_flask_redis_env env

docker python 環(huán)境變量,Docker,flask,python,docker

參考博文:

如何查看Docker容器環(huán)境變量,如何向容器傳遞環(huán)境變量文章來源地址http://www.zghlxwxcb.cn/news/detail-722181.html

到了這里,關(guān)于使用Dockerfile構(gòu)建python項(xiàng)目鏡像(flask框架+redis+環(huán)境變量)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 使用Dockerfile構(gòu)建nginx鏡像

    ?雨雀:使用Dockerfile構(gòu)建nginx鏡像 · 語(yǔ)雀 (yuque.com) ?yaml文件用法:02 Docker三劍客之一-Dockerfile · 語(yǔ)雀 (yuque.com) 1.使用Dockerfile構(gòu)建nginx鏡像 2.編寫Dockerfile yaml文件用法:02 Docker三劍客之一-Dockerfile · 語(yǔ)雀 (yuque.com) 3.構(gòu)建鏡像 4.運(yùn)行鏡像? ?

    2024年02月12日
    瀏覽(25)
  • Docker 解析:使用 Dockerfile 自動(dòng)構(gòu)建鏡像

    簡(jiǎn)介 Docker 容器是使用 基礎(chǔ) 鏡像創(chuàng)建的。一個(gè)鏡像可以是基本的,只包含操作系統(tǒng)的基本要素,也可以包含一個(gè)準(zhǔn)備好啟動(dòng)的復(fù)雜的預(yù)構(gòu)建應(yīng)用程序堆棧。 在使用 Docker 構(gòu)建鏡像時(shí),每個(gè)操作(例如執(zhí)行的命令,比如 apt-get install)都會(huì)形成一個(gè)新的層疊在之前的層之上。然

    2024年03月26日
    瀏覽(35)
  • 手把手教你使用Flask框架構(gòu)建Python接口以及如何請(qǐng)求該接口

    Flask是一個(gè)輕量級(jí)的Web應(yīng)用框架,基于Python編寫,其核心思想是保持簡(jiǎn)潔,靈活性和易于擴(kuò)展。 Flask是一個(gè)輕量級(jí)的Web應(yīng)用框架,基于Python編寫,其核心思想是保持簡(jiǎn)潔,靈活性和易于擴(kuò)展。Flask提供了基本的Web開發(fā)工具和應(yīng)用程序的結(jié)構(gòu),但同時(shí)也允許開發(fā)者自由選擇其他庫(kù)

    2024年02月06日
    瀏覽(26)
  • Docker技術(shù)入門| Part03:Dockerfile詳解(Dockerfile概念、Dockerfile 指令、使用Dockerfile構(gòu)建鏡像)

    Docker鏡像原理 Docker鏡像是由特殊的文件系統(tǒng)疊加而成 最底端是bootfs,并使用宿主機(jī)的bootfs 第二層是root文件系統(tǒng)rootfs,稱為base image 然后再往上可以疊加其他的鏡像文件 統(tǒng)文件系統(tǒng)(UnionFile System)技術(shù)能夠?qū)⒉煌膶诱铣梢粋€(gè)文件系統(tǒng),為這些層提供了一個(gè)統(tǒng)的視角,這樣就隱

    2024年02月09日
    瀏覽(92)
  • 使用Dockerfile來構(gòu)建服務(wù)的鏡像,并部署在容器中

    使用Dockerfile來構(gòu)建服務(wù)的鏡像,并部署在容器中

    在項(xiàng)目的根目錄下,創(chuàng)建Dockerfile 基礎(chǔ)寫法: 對(duì)上面的每一行進(jìn)行詳細(xì)說明: (1) FROM openjdk:8-jre-slim 基礎(chǔ)鏡像 【這個(gè)鏡像包含了 OpenJDK 8 (Java 運(yùn)行環(huán)境)和一個(gè)精簡(jiǎn)版的操作系統(tǒng)。】 (2) MAINTAINER Forrest 鏡像的作者 (3) ENV PARAMS=\\\"\\\" TZ=PRC 1)設(shè)置環(huán)境變量 2)PARAMS表示傳給m

    2024年01月22日
    瀏覽(20)
  • 使用dockerfile手動(dòng)構(gòu)建JDK11鏡像運(yùn)行容器并校驗(yàn)

    使用dockerfile手動(dòng)構(gòu)建JDK11鏡像運(yùn)行容器并校驗(yàn)

    Docker官方維護(hù)鏡像的公共倉(cāng)庫(kù)網(wǎng)站 Docker Hub 國(guó)內(nèi)無法訪問了,大部分鏡像無法下載,準(zhǔn)備逐步構(gòu)建自己的鏡像庫(kù)?!巨D(zhuǎn)載aliyun官方-容器鏡像服務(wù) ACR】Docker常見問題 阿里云容器鏡像服務(wù)ACR(Alibaba Cloud Container Registry)是面向容器鏡像、Helm Chart等符合OCI標(biāo)準(zhǔn)的云原生制品安全托

    2024年02月03日
    瀏覽(29)
  • 【云原生】Docker鏡像的創(chuàng)建
Dockerfile 多階段構(gòu)建原理和使用場(chǎng)景

    【云原生】Docker鏡像的創(chuàng)建 Dockerfile 多階段構(gòu)建原理和使用場(chǎng)景

    創(chuàng)建鏡像有三種方法,分別為【基于已有鏡像創(chuàng)建】、【基于本地模板創(chuàng)建】以及【基于Dockerfile創(chuàng)建】。 (1)首先啟動(dòng)一個(gè)鏡像,在容器里做修改 ?docker run -it --name web centos:7 /bin/bash ? ? #啟動(dòng)容器 ?? ?yum install -y epel-release ?#安裝epel源 ?yum install -y nginx ? ? ? ? #安裝ng

    2024年02月12日
    瀏覽(30)
  • 使用Dockerfile構(gòu)建自定義jdk鏡像,在使用jdk鏡像創(chuàng)建一個(gè)容器來外部訪問(一步一步來哦~好簡(jiǎn)單的呢)

    使用Dockerfile構(gòu)建自定義jdk鏡像,在使用jdk鏡像創(chuàng)建一個(gè)容器來外部訪問(一步一步來哦~好簡(jiǎn)單的呢)

    文章主人公:帥哥BUG??? 文章路人: 路人???? 路人??? ??:什么是dockerfile? ??:Dockerfile 是一個(gè)文本格式的配置文件, 用戶可以使用 Dockerfile 來快速創(chuàng)建自定義的鏡像,另外,使 用Dockerfile去構(gòu)建鏡像好比使用pom去構(gòu)建maven項(xiàng)目一樣,有異曲同工之妙 ??:知道了知道了,

    2024年02月09日
    瀏覽(22)
  • 如何在 Linux 命令行下玩轉(zhuǎn) Docker——如何使用 Dockerfile 來構(gòu)建和運(yùn)行容器鏡像

    作者:禪與計(jì)算機(jī)程序設(shè)計(jì)藝術(shù) Docker 是一款開源的容器化技術(shù),它利用 Linux 內(nèi)核的容器特性,將應(yīng)用部署到獨(dú)立的進(jìn)程環(huán)境中。基于容器技術(shù)可以極大地提高開發(fā)者和運(yùn)維人員的效率,降低部署、測(cè)試和生產(chǎn)環(huán)節(jié)中的成本,有效地實(shí)現(xiàn)云計(jì)算資源的彈性伸縮。 本文主要介紹

    2024年02月07日
    瀏覽(106)
  • SpringBoot項(xiàng)目 使用Dockerfile創(chuàng)建鏡像與容器

    SpringBoot項(xiàng)目 使用Dockerfile創(chuàng)建鏡像與容器

    這里我使用的是云服務(wù)器,Centos7-Linux操作系統(tǒng) 需要以下環(huán)境支持 1、maven環(huán)境 2、java環(huán)境 3、springboot項(xiàng)目 maven環(huán)境 可以去我這個(gè)博客了解\\\'\\\'配置MAVEN環(huán)境-CSDN博客\\\'\\\' java環(huán)境 可以去\\\'\\\' java環(huán)境變量配置-CSDN博客\\\'\\\' springboot項(xiàng)目 先來簡(jiǎn)單創(chuàng)建一個(gè)springboot項(xiàng)目 一、進(jìn)入IDEA的終端 使用

    2024年03月28日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包