docker进阶学习(二)
Docker Compose
- DockerFile 单个容器 手动运行。
- Docker Compose 定义多个容器,高效管理。
安装
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose |
chmod a+x /usr/local/bin/docker-compose |
官方demo
mkdir compose
cd compose
- 创建
app.py
,写入以下代码
import time |
创建
requirements.txt
,写入需要用到的python库flask
redis创建``DockerFile`
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
EXPOSE 5000
COPY . .
CMD ["flask", "run"]创建``docker-compose.yml`
version: "3.3"
services:
web:
build: .
ports:
- "5000:5000"
redis:
image: "redis:alpine"docker-compose up
启动成功
网络
当使用docker-compose启动一个环境时,docker network会自定义一个网络
所有服务都在同一个网络下,并都可使用域名访问
yaml规则
docker-compose.yml
#核心配置services |
一键部署WP博客
mkdir mywordpress
cd mywordpress
- 编写
yaml
文件
version: '3.3' #版本信息 |
后台启动
docker-compose up -d |
搭建成功
停止服务
docker-compose down #必须在环境的目录下才可停止 |
docker-compose官方文档地址:https://docs.docker.com/compose/compose-file/compose-file-v3/#restart
实战搭建s2-061漏洞环境
上篇文章中,我们使用了Dockerfile搭建漏洞环境,本文中还是沿用上文中的Dockerfile文件,然后来编写yaml文件,来一键启动s2-061环境
version: "3" |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Time'Blog!
评论