docker-compose简单使用方法详解

Compose介绍

Docker Compose是一个用来定义和运行复杂应用的Docker工具。一个使用Docker容器的应用,通常由多个容器组成。使用Docker Compose不再需要使用shell脚本来启动容器。 

Compose 通过一个配置文件来管理多个Docker容器,在配置文件中,所有的容器通过services来定义,然后使用docker-compose脚本来启动,停止和重启应用,和应用中的服务以及所有依赖服务的容器,非常适合组合使用多个容器进行开发的场景。

一、前置条件

1.安装 docker-compose ,可以参考这篇文章 http://www.tuohang.net/article/169515.html

二、使用方法

1.目录结构

?
1
2
3
4
|–mysite                       # 根目录
|—-docker-compose.yml    # 用于部署上线   
|—-Dockerfile            # 用于打包镜像
|—-server.py             # 测试服务

2.创建测试服务【server.py】

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
from fastapi import FastAPI
# 创建服务对象
app = FastAPI()
# get ——————————–
@app.get(“/”)
async def hello():
return “hello docker-compose”
# ————————————
if __name__ == __main__:
import uvicorn
uvicorn.run(app=”server:app”, host=”0.0.0.0″, port=2333, reload=True)

ps:一个fastapi服务,访问 ip:2333 会返回 “hello docker-compose”

3.创建 docker 打包文件【Dockerfile】

?
1
2
3
4
5
6
7
8
9
10
FROM python:3.7
MAINTAINER ps
WORKDIR /mysite
ADD . /mysite
EXPOSE 2333
RUN python -m pip install -U pip
RUN pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
RUN pip install uvicorn fastapi
CMD python server.py

ps:

FROM :基础镜像 MAINTAINER :指明作者 WORKDIR /mysite :指明工作目录为容器中的 /mysite 目录 ADD . /mysite :当前路径所有文件复制到容器的 /mysite 目录下 EXPOSE 2333 :指明容器中暴露的端口为 2333【此处可省,后面在docker-compose.yml配置了】 RUN :run的三行分别是更新pip、换源、安装 fastapi 依赖包 CMD :服务启动命令

4.创建 compose 部署文件【docker-compose.yml】

?
1
2
3
4
5
6
7
8
9
version: 3.5
services:
mysite:
image: mysite_image:0.0.1
container_name: mysite_container
build: ./
restart: always
ports:
– “2333:2333”

ps:

version: ‘3.5’ :指定当前的 compose 版本【compose 版本可以通过 docker-compose –version 命令查看】 services :指定部署哪些服务 mysite :如果不指定下面的 image 参数的话,打包后的镜像名会以 当前文件夹名+下划线+你配置的名称 组合,作为你的镜像名【比如:此处我如果没指定下面的 image 参数的话,我的镜像名就是 文件夹名+下划线+配置名 == mysite_mysite】如果指定了 image 参数的话,那么这里的名字可以随便写,相当于站位符,没啥用了 image: mysite_image:0.0.1 :指定镜像名为 mysite_image 版本号为 0.0.1 container_name: mysite-container :指定启动后的容器名为 mysite-container build ./ :在当前路径下找 Dockerfile 文件 restart: always :开机自启 ports :端口映射

5.启动容器

?
1
docker-compose up -d

ps:

-d :后台运行 首次执行时会先打包镜像,在从该镜像启动容器,后续运行则会直接从已存在的镜像启动

6.查看容器

1.docker ps 查看,如果找不到的话可能启动失败了,试试 docker ps -a 查看全部容器【包括启动成功和失败的所有容器】

三、测试

访问 ip:2333

%docker-compose简单使用方法详解-猿站网-插图

到此这篇关于docker-compose简单使用方法的文章就介绍到这了,更多相关docker compose使用内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_43721000/article/details/127507005

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

解决k8s namespace 一直处于 Terminating 状态的问题

2023-3-2 22:57:59

建站知识

小知识:plt是什么格式?plt文件怎么打开?

2023-3-2 23:02:59

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索