Docker封装服务的常见命令

该文介绍了如何使用Dockerfile创建一个基于Python3.8.2的Flask服务容器,包括安装Flask,拷贝应用代码,暴露5000端口,以及设置启动命令。同时提到了常用Docker命令如构建、运行、查看容器状态和日志,以及服务监控工具supervisor的配置要求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Flask服务示例

Dockerfile 文件内容:
FROM python:3.8.2

# 创建 app 文件夹
RUN mkdir -p /app

# 在容器内部执行的命令
RUN pip install flask -i https://pypi.douban.com/simple/
# RUN pip install -r requirements.txt -i https://pypi.douban.com/simple/

# 将 linux 系统当前目录下的内容拷贝到容器的 /app 目录下
ADD . /app

# 暴露 5000 端口
EXPOSE 5000

# 将 app 文件夹为工作目录
WORKDIR /app

# 容器启动的时候执行的命令 flask run
CMD ["flask", "run", "--host", "0.0.0.0"]
# 用单引号的话,flask应用启动不起来,必须要用双引号
常用docker命令:
  • 构建docker(在Dockerfile文件路径下执行)
docker build -t 名字:版本 .
  • 构建完可以看见镜像ID,运行获取容器
docker run -d -p 5000:5000 镜像ID
  • 查看容器状况(运行和停止的都看),可以看见容器ID
docker ps -a
  • 如果启动失败(Exit(0)是正常执行完退出,其他代号是出错了退出),根据容器ID查看日志,注意服务程序需要是“阻塞”的
docker logs 容器ID
  • 进行镜像调整后,删除刚才的镜像,重复上述步骤
docker rmi 镜像ID --force
  • 容器删除可以使用全部命令
docker rm -vf $(docker ps -aq)
  • 注:如果使用了supervisor进行了服务监控,因为要求docker内的服务是阻塞的,设置supervisor.conf中的参数
nodaemon=true              ; start in foreground if true; default false

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TiSV工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值