docker-compose--简单的计数器

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介:

1.app.py

from flask import Flask
from redis import Redis
import os
app = Flask(__name__)
redis = Redis(host='redis', port=6379)

@app.route('/')
def hello():
    redis.incr('hits')
    return 'Hello World! I have been seen %s times.' % redis.get('hits')

if __name__ == "__main__":
    app.run(host="0.0.0.0",debug=True)

这是一个Flask应用,基于Python的轻Web应用;

@app.route('/') 访问根目录,然后返回一个从Redis里读取出来的值,该值通过自增来统计访问次数;

最后Web容器在0.0.0.0上监听默认端口5000并启动。

2.requirements.txt

flask
redis

指定了Pythone的依赖包:flaskredis

3.Dockerfile

FROM python:2.7
ADD . /code
WORKDIR /code
RUN pip install -r requirements.txt

基于python2.7,将当前目录的文件拷贝至容器的工作目录/code

3.docker-compose.yml

version: '2'
services:
  web:
    build: .
    command: python app.py
    ports:
      - "5000:5000"
    volumes:
      - .:/code
    links:
      - redis
  redis:
    image: redis

定义了compose的版本和两个服务

其中,第一个服务web,它从当前目录的Dockerfile build得到,在容器中运行“python app.py”;把容器的5000端口映射到宿主机的5000端口;挂载执行这些操作所在的目录到容器中的/code目录下;

第二个服务redis直接使用已有redis镜像。

4.启动容器

docker-compose up

访问宿主机的5000端口,刷新两次查看自增。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
相关文章
|
2月前
|
NoSQL Redis Docker
使用Docker Compose工具进行容器编排的教程
以上就是使用Docker Compose进行容器编排的基础操作。这能帮你更有效地在本地或者在服务器上部署和管理多容器应用。
259 11
|
4月前
|
网络协议 Ubuntu Docker
Docker Compose--命令说明
Docker Compose--命令说明
694 30
|
4月前
|
网络协议 NoSQL Redis
Docker Compose--模板文件
Docker Compose--模板文件
290 29
|
4月前
|
Linux Docker Windows
Docker Compose
Docker Compose
406 29
|
4月前
|
关系型数据库 MySQL 数据库
Docker Compose-实战
Docker Compose-实战
135 5
|
10月前
|
关系型数据库 MySQL API
|
4月前
|
Docker 容器
在openEuler 22.03 LTS上安装Docker CE和Docker Compose
以上就是在openEuler 22.03 LTS上安装Docker CE和Docker Compose的过程。希望这个指南能帮助你顺利完成安装。
845 12
|
7月前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
632 42
|
9月前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
532 78
|
6月前
|
弹性计算 运维 Ubuntu
在阿里云ECS云服务器上安装、配置及高效使用Docker与Docker Compose
本文介绍了在阿里云ECS上使用Ubuntu系统安装和配置Docker及Docker Compose的详细步骤。通过这些工具,可以快速部署、弹性扩展和高效管理容器化应用,满足开发和运维需求。内容涵盖Docker的安装、镜像源配置、创建Web程序镜像以及使用Docker Compose部署WordPress等实际操作,并分享了使用体验,展示了阿里云实例的高性能和稳定性。
1201 4