吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1289|回复: 5
收起左侧

[学习记录] 【Docker】小案例学习

[复制链接]
zhzhx 发表于 2022-12-2 14:42
1、进入windows版docker界面,新建文件夹pp


11.png


2、进入pp,在目录下新建三个文件dockerfile.txt,app.py,requirements.txt
2.1 dockerfile文件

[Python] 纯文本查看 复制代码
# Use an official Python runtime as a parent image
FROM python:3.8

# Set the working directory to /app
WORKDIR /usr/src/python-app

# Copy the current directory contents into the container at /app
COPY . /usr/src/python-app

# Install any needed packages specified in requirements.txt
RUN pip install --trusted-host pypi.python.org -r requirements.txt

# Make port 80 available to the world outside this container
EXPOSE 80

# Define environment variable
ENV NAME World

# Run app.py when the container launches
CMD ["python", "app.py"]


2.2 requirements.txt
[Python] 纯文本查看 复制代码
Flask
Redis


2.3 app.py
[Python] 纯文本查看 复制代码
from flask import Flask
from redis import Redis, RedisError
import os
import socket
 
# Connect to Redis
redis = Redis(host="redis", db=0, socket_connect_timeout=2, socket_timeout=2)
 
app = Flask(__name__)
 
@app.route("/")
def hello():
    try:
        visits = redis.incr("counter")
    except RedisError:
        visits = "<i>cannot connect to Redis, counter disabled</i>"
 
    html = "<h3>Hello {name}!</h3>" \
           "<b>Hostname:</b> {hostname}<br/>" \
           "<b>Visits:</b> {visits}"
    return html.format(name=os.getenv("NAME", "world"), hostname=socket.gethostname(), visits=visits)
 
if __name__ == "__main__":
    app.run(host='0.0.0.0', port=80)



3、在文件夹pp下进行docker构建,注意.不可忽略

[Python] 纯文本查看 复制代码
docker build -t pyapp:v1.0.1 -f ./dockerfile.txt .


4、查看镜像
[Python] 纯文本查看 复制代码
docker image ls



22.png

5、运行镜像
[Python] 纯文本查看 复制代码
docker run -p 4000:80 pyapp:v1.0



6、访问http://192.168.99.100:4000/,具体IP地址似绑定的为准


33.png

免费评分

参与人数 2吾爱币 +2 热心值 +2 收起 理由
poster1 + 1 + 1 我很赞同!
461735945 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

jokerzheshao 发表于 2022-12-2 14:57
感谢,学到了
新时代 发表于 2022-12-2 15:07
bearkr 发表于 2022-12-2 16:48
lfordch 发表于 2022-12-2 18:34
牛的,很实用的&#128077;&#127995;
guiyuandaren 发表于 2022-12-2 20:13
平时多学学各位分享的技术贴,面试不慌张
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-28 23:04

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表