Docker Compose
一,介绍
理解: Compose是Docker官方的开源项目,需要安装! 通过Dockerfile让程序运行在任何地方
A docker-compose.yml
looks like this:
version: "3.9" # optional since v1.27.0 services: web: build: . ports: - "8000:5000" volumes: - .:/code - logvolume01:/var/log links: - redis redis: image: redis volumes: logvolume01: {}Compose重要概念: (1)服务services,就是容器,应用 (web、redis 、mysql……) (2)项目project,就是一组关联的容器,如博客,有web和mysql 二,安装 1、下载
官方文档(这个有点慢) sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 推荐使用这个: curl -L https://get.daocloud.io/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
2、授权
sudo chmod +x /usr/local/bin/docker-compose可以看到版本就说明安装成功!
三,体验 1、Get started 官网地址:https://docs.docker.com/compose/gettingstarted/
(1)Create a directory for the project:
mkdir composetest
cd composetest(2)Create a file called
app.py
in your project directory and paste this in:
import time import redis from flask import Flask app = Flask(__name__) cache = redis.Redis(host='redis', port=6379) def get_hit_count(): retries = 5 while True: try: return cache.incr('hits') except redis.exceptions.ConnectionError as exc: if retries == 0: raise exc retries -= 1 time.sleep(0.5) @app.route('/') def hello(): count = get_hit_count() return 'Hello World! I have been seen {} times.\n'.format(count)(3)Create another file called
requirements.txt
in your project directory and paste this in:
flask redis