制作docker镜像

第1步、编辑Dockerfile文件

第2步、编辑requirements.txt文件

第3步、编辑app.py文件

第4步、生成镜像文件

docker build -t xyz_friendlyhello_1 .

第5步、使用镜像,启动容器

docker run -d -p 4080:80 --name xyz-hello–1 xyz_friendlyhello_1

第6步、访问容器的web服务

使用curl或者chrome浏览器访问;

主机ip:4080

第7步、 启动redis容器

docker run -d -p 6379:6379 --name sc_redis_1 redis

第8步、 再次启动一个自己制作镜像的容器,链接到redis容器

docker run -d --name xyz-hello–2 -p 4081:80 --link sc_redis_1:redis xyz_friendlyhello_1

第9步、访问容器的web服务

curl或者chrome浏览器访问

宿主机ip:4081

app.py

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)

Dockerfile

# 使用python3.9版本
FROM python:3.9-slim

# /app文件
WORKDIR /app

# 加载/app文件内容
ADD . /app

RUN pip3 install -r requirements.txt -i http://pypi.douban.com/simple --trusted-host  pypi.douban.com

# 80端口
EXPOSE 80

# 环境ENV的设置:NAME和AUTHOR可以自己设置
ENV NAME World
ENV AUTHOR xiayuzhen

# CMD用来执行文件的
CMD ["python","app.py"]

requirements.txt

Flask==2.0.3
redis==4.3.4

[1] https://blog.csdn.net/weixin_50999155/article/details/119764103

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值