Docker Compose 安装使用教程
Docker Compose 安装
- 1.下载
- 2. 使用
- 2.1 创建文件夹
- 2.2 编写Python脚本
- 2.3 编辑Python依赖文件
- 2.4 创建Dockerfile文件
- 2.5 创建 docker-compose.yml
- 2.6 运行
最新官网:https://github.com/docker/compose/releases
1.下载
1.27.4可以改成最新版本
# 1. 下载1.27.4 版本
curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose# 2. 添加执行权限
chmod 755 /usr/local/bin/docker-compose# 3. 创建软连接
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose# 4. 查看是否成功
docker-compose --version

离线安装(1.27.4版本):
发现下载很慢或者无法下载,
迅雷云链接:https://pan.xunlei.com/s/VMNTezLorjr0h7K7besm0u-5A1
提取码:mqk7
# 1. 移动/usr/local/bin/文件夹下
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
# 2. 添加执行权限
chmod 755 /usr/local/bin/docker-compose
# 3. 查看是否成功
docker-compose --version
2. 使用
参考链接:https://www.runoob.com/docker/docker-compose.html
2.1 创建文件夹
# 1. 新建文件夹
mkdir composetest# 2. 进入文件夹
cd composetest
2.2 编写Python脚本
文件名:
app.py
不知道代码意思没事 直接复制黏贴过去
import timeimport redis
from flask import Flaskapp = Flask(__name__)
cache = redis.Redis(host='redis', port=6379)def get_hit_count():retries = 5while True:try:return cache.incr('hits')except redis.exceptions.ConnectionError as exc:if retries == 0:raise excretries -= 1time.sleep(0.5)@app.route('/')
def hello():count = get_hit_count()return 'Hello World! I have been seen {} times.\n'.format(count)
2.3 编辑Python依赖文件
在新建依赖包文件:
requirements.txt
python项目中必须包含一个 requirements.txt 文件,用于记录所有依赖包及其精确的版本号。以便新环境部署。
内容如下:
flask
redis
2.4 创建Dockerfile文件
创建
Dockerfile文件
FROM python:3.7-alpine: 从 Python 3.7 映像开始构建镜像。
WORKDIR/code: 将工作目录设置为 /code。
ENV FLASK_APP app.py
ENV FLASK_RUN_HOST 0.0.0.0
设置 flask 命令使用的环境变量。
RUNapk add --no-cache gcc musl-dev linux-headers: 安装 gcc,以便诸如 MarkupSafe 和 SQLAlchemy 之类的 Python 包可以编译加速。
COPYrequirements.txt requirements.txt
RUNpip install -r requirements.txt
复制 requirements.txt 并安装 Python 依赖项。
COPY . .: 将 . 项目中的当前目录复制到 . 镜像中的工作目录。
CMD ["flask", "run"]: 容器提供默认的执行命令为:flask run。
FROM python:3.7-alpine
WORKDIR /code
ENV FLASK_APP app.py
ENV FLASK_RUN_HOST 0.0.0.0
RUN apk add --no-cache gcc musl-dev linux-headers
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
COPY . .
CMD ["flask", "run"]
2.5 创建 docker-compose.yml
创建
docker-compose.yml文件
web:名称叫web, 该 web 服务使用从 Dockerfile 当前目录中构建的镜像。然后,它将容器和主机绑定到暴露的端口 5000。此示例服务使用 Flask Web 服务器的默认端口 5000 。
build: 编译当前文件夹下的Dockerfile文件
redis:该 redis 服务使用 Docker Hub 的公共 Redis 映像。
version: '3'
services:web:build: .ports:- "5000:5000"redis:image: "redis:alpine"
编辑好的文档目录如下:

2.6 运行
必须在
docker-compose.yml运行已下命令
不然会报错:
ERROR:
Can’t find a suitable configuration file in this directory or any
parent. Are you in the right directory?
Supported filenames: docker-compose.yml, docker-compose.yaml
命令参考链接: https://www.cnblogs.com/beyang/p/11416646.html
docker-compose up
# 后台运行
docker-compose up -d# 查看运行容器
docker-compose ps# 查看日志
docker-compose logs# 停止容器
docker-compose stop# 启动容器
docker-compose start# 删除已经停止的容器 -f 强制删除
docker-compose rm# 进入容器 如果是linux容器sh替换成/bin/bash
docker-compose exec web sh
出现如下说明运行正常
地址栏输入你的ip加上端口即可:
http://192.168.88.129:5000/


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
