docker-compose简单使用方法
创始人
2024-03-31 07:33:25
0

文章目录

  • 一、前置条件
  • 二、使用方法
    • 1.目录结构
    • 2.创建测试服务【server.py】
    • 3.创建 docker 打包文件【Dockerfile】
    • 4.创建 compose 部署文件【docker-compose.yml】
    • 5.启动容器
    • 6.查看容器
  • 三、测试

一、前置条件

  1. 安装 docker-compose ,可以参考这篇文章 https://blog.csdn.net/weixin_43721000/article/details/125425947

二、使用方法

1.目录结构

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

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

from fastapi import FastAPI# 创建服务对象
app = FastAPI()# get --------------------------------
@app.get("/")
async def hello():return "hello docker-compose"
# ------------------------------------if __name__ == '__main__':import uvicornuvicorn.run(app="server:app", host="0.0.0.0", port=2333, reload=True)

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


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

FROM python:3.7MAINTAINER psWORKDIR /mysiteADD . /mysiteEXPOSE 2333RUN python -m pip install -U pip
RUN pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
RUN pip install uvicorn fastapiCMD python server.py

ps:

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

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

version: '3.5'services:mysite:image: mysite_image:0.0.1container_name: mysite_containerbuild: ./restart: alwaysports:- "2333:2333"

ps:

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

5.启动容器

docker-compose up -d

ps:

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

6.查看容器

  1. 此时查看容器状态的命令需要改为 docker-compose ps 而不是 docker ps 了【 docker-compose 部署的容器都用 docker-compose ps 查看,docker 部署的容器都用 docker ps 查看】
  2. 不过删除容器等其他操作还是用 docker 开头

三、测试

访问 ip:2333
在这里插入图片描述

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...