1+X 云计算运维与开发(中级)案例实战——docker-compose的部署和基本使用
前言
学而不思则罔,思而不学则殆。
使用一台k8s镜像
IP | 主机名 |
---|---|
192.168.200.132/24 | compose |
思路
了解docker-compose的架构
了解docker-compose的基本运作和哪些文件之间的关系
实操
1.安装 docker-compose
[root@compose ~]# mv docker-compose /usr/local/bin/
[root@compose ~]# chmod +x /usr/local/bin/docker-compose
[root@compose ~]# docker-compose -v
docker-compose version 1.25.0-rc2, build 661ac20e
这里是下载命令:
curl -L https://github.com/docker/compose/releases/download/1.25.0-rc2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
这里是github的地址: https://github.com/docker/compose
2.创建项目目录
[root@compose ~]# mkdir composetest
[root@compose ~]# cd composetest/
[root@compose composetest]#
3.定义app.py文件
在这个例子中,Redis 就是应用网络中 Redis 容器的主机名。端口使用的 Redis 默认端口 6379
[root@compose composetest]# cat app.py
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)
if __name__ == "__main__":
app.run(host="0.0.0.0", debug=True)