Dockerfile入门案例

前言

本案例是使用python的flask项目进行构建项目以及运行镜像,docker run自定义的镜像成功后进行访问界面看到hello Docker即为成功。

代码

app.py

python 复制代码
from flask import Flask  
app = Flask(__name__)  
  
@app.route('/')  
def hello_world():  
return 'Hello, Docker!'  
  
  
if __name__ == '__main__':  
app.run(host='0.0.0.0', port=5000)

.dockerignore

bash 复制代码
__pycache__  
.git  
venv  
*.log  
.DS_Store

requirements.txt

txt 复制代码
Flask==2.0.1  
Werkzeug==2.0.3

Dockerfile

Dockerfile 复制代码
# 使用官方Python运行时作为轻量级基础镜像  
FROM python:3.9-slim  
# 设置容器内的工作目录  
WORKDIR /app  
# 先将依赖文件复制到容器中  
COPY requirements.txt .  
# 安装Python依赖(使用国内镜像源可加速构建)  
RUN pip install --no-cache-dir -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple  
# 将当前目录下的所有文件复制到容器的/app目录  
COPY . .  
# 声明容器运行时暴露的端口  
EXPOSE 5000  
# 定义容器启动后执行的命令  
CMD ["python", "app.py"]

指令

构建指令

perl 复制代码
docker build --no-cache -t my-hello-flask .

注意指令的点不要漏了

运行指令

arduino 复制代码
docker run -d -p 5000:5000 --name my-running-app my-hello-flask

结果展示

相关推荐
JavaPub-rodert16 分钟前
我又把自己的 Go 后台管理系统升级了一遍:文件管理、2GB 上传、私有文件预览、Docker 镜像全安排上了
开发语言·docker·golang·shiyuadmin
Zhu7581 小时前
在docker环境部署frp
运维·docker·容器
承渊政道4 小时前
飞牛NAS部署Immich:搭建家庭相册并实现远程访问
运维·服务器·docker·内网穿透·cpolar·nas·immich
ruofu335 小时前
如何让docker使用提前下载好的镜像,而不是在线拉取
java·spring cloud·docker
童槿顏丶19 小时前
docker自动化部署脚本
docker·eureka·自动化
GlueNa2SiO31 天前
06-Docker存储与数据持久化
笔记·学习·docker
一位正在转型AI全栈的前端工程师1 天前
前端转全栈:从 502 到 200,我的第一个 Docker+Nginx+Node.js 项目
docker·容器
jason_renyu1 天前
Linux Docker 服务管理与排查实战指南(新手速查版)
linux·docker·新手docker学习·docker日志查询·docker服务管理
童槿顏丶1 天前
Jenkins部署(Docker)
java·docker·jenkins
维核科技1 天前
大模型私有化部署:Docker与Kubernetes实战避坑
docker·容器·kubernetes