Docker----docker-compose初体验
作者:redrose2100   类别:    日期:2022-05-03 14:25:36    阅读:1300 次   消耗积分:0 分

(1)在 /home 目录下创建composetest目录,并进入此目录

  1. mkdir composetest
  2. cd composetest

(2)创建一个flask服务文件,app.py,内容如下:

  1. vi app.py

编写内容如下:

  1. import time
  2. import redis
  3. from flask import Flask
  4. app = Flask(__name__)
  5. cache = redis.Redis(host='redis', port=6379)
  6. def get_hit_count():
  7. retries = 5
  8. while True:
  9. try:
  10. return cache.incr('hits')
  11. except redis.exceptions.ConnectionError as exc:
  12. if retries == 0:
  13. raise exc
  14. retries -= 1
  15. time.sleep(0.5)
  16. @app.route('/')
  17. def hello():
  18. count = get_hit_count()
  19. return 'Hello World! I have been seen {} times.\n'.format(count)

(3)创建flask服务的安装依赖文件

  1. vi requirements.txt

编写内容如下:

  1. flask
  2. redis

(4)创建一个Dockerfile文件

  1. vi Dockerfile

编写内容如下:

  1. # syntax=docker/dockerfile:1
  2. FROM python:3.7-alpine
  3. RUN sed -i -e 's/http:/https:/' /etc/apk/repositories
  4. WORKDIR /code
  5. ENV FLASK_APP=app.py
  6. ENV FLASK_RUN_HOST=0.0.0.0
  7. RUN apk add --no-cache gcc musl-dev linux-headers
  8. COPY requirements.txt requirements.txt
  9. RUN pip install -r requirements.txt
  10. EXPOSE 5000
  11. COPY . .
  12. CMD ["flask", "run"]

(5)创建docker-compose.yml文件

  1. vi docker-compose.yml

编写内容如下:

  1. version: "3.9"
  2. services:
  3. web:
  4. build: .
  5. ports:
  6. - "5000:5000"
  7. redis:
  8. image: "redis:alpine"

(6)启动容器

  1. docker-compose up # 后台启动使用 docker-compose up

(7)浏览器打开ip:5000


部署已经OK,每次刷新一次页面,times 值都会刷新

始终坚持开源开放共享精神,同时感谢您的充电鼓励和支持!
版权所有,转载本站文章请注明出处:redrose2100, http://blog.redrose2100.com/article/70
个人成就
  • 博客总数: 613 
  • 阅读总量: 667030 
  • 2022年 : 371 篇 
  • 2023年 : 211 篇 
  • 2024年 : 31 篇 
  • 2025年 : 0 篇 
测试开发技术全栈公众号
DevOps技术交流微信群