docker compose 容器编排工具

news/2024/11/29 17:34:28/

目录

docker compose是什么?

官网网站:Docker Compose overview | Docker Documentation

安装使用compose:

步骤:

1、下载并安装compose的命令行插件

2、安装完成后授予权限,测试compose是否可以使用

3、实例测试(python flase镜像创建)

1、创建目录composetest

2、创建app.py文件

3、创建requirements.txt

4、创建Dockerfile

5、创建 docker-compose.yml

6、重新启动docker,刷新docker服务(可做可不做,可以防止8000端口被占用)

7、编译并运行compose

实例二:Mysql镜像compose

实例网站:WordPress samples | Docker Documentation


docker compose是什么?

compose是一个容器编排工具:

启动一个容器,进行哪些配置:配置哪个端口,启动哪个进程,使用哪个卷,是否链接其他的容器等,同时可以启动多个容器等

使用 Docker Compose,可以使用 YAML 文件来定义多个容器、服务、网络等相关配置信息,然后通过一条命令启动、停止、重建整个应用程序。

使用compose就像是使用脚本去操作容器,批量完成对容器的操作 --》docker 里的脚本操作

官网网站:Docker Compose overview | Docker Documentation

docker compose会读取yaml文件的配置,批量的去启动容器

安装使用compose:

步骤:

1、下载并安装compose的命令行插件

DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
mkdir -p $DOCKER_CONFIG/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose

因为我们是通过github下载的,因此国内可能需要翻墙,并且还会限速,下载需要一段时间

2、安装完成后授予权限,测试compose是否可以使用

3、实例测试(python flase镜像创建)

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)

官网实例:Try Docker Compose | Docker Documentation

1、创建目录composetest

mkdir composetest
cd composetest

2、创建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)

3、创建requirements.txt

flask
redis

4、创建Dockerfile

# syntax=docker/dockerfile:1
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"]

5、创建 docker-compose.yml

services:web:build: .ports:- "8000:5000"redis:image: "redis:alpine"

6、重新启动docker,刷新docker服务(可做可不做,可以防止8000端口被占用)

service docker restart

7、编译并运行compose

docker compose up

完成后就会帮我们自动创建docker镜像并起容器了,到时候我们只需要访问8000端口即可完成该项目 

实例二:Mysql镜像compose

实例网站:WordPress samples | Docker Documentation


http://www.ppmy.cn/news/487583.html

相关文章

sinee303a变频器说明书_SINEE正弦变频器EM303A-022G-3A正弦变频器说明书

湖北正弦变频器一级代理,正弦SINEE厂家授权一级代理,专业负责湖北全省正弦变频器的宣传,推广,销售,维修等服务,厂家直销供货,没有中间商利润,价格最优惠,欢迎来电洽谈 联…

Linux(centos )防火墙常见操作

1、查看防火墙当前状态 systemctl status firewalld 2、开启防火墙 systemctl start firewalld 3、关闭防火墙 systemctl stop firewalld.service 4、如果报错:-bash: firewall-cmd: command not found,可能是没有安装 firewall。安装命令&#xff1a…

【kubernetes】Docker与获取转证书工具安装、kubernetes软件安装

前言:二进制部署kubernetes集群在企业应用中扮演着非常重要的角色。无论是集群升级,还是证书设置有效期都非常方便,也是从事云原生相关工作从入门到精通不得不迈过的坎。通过本系列文章,你将从虚拟机准备开始,到使用二进制方式从零到一搭建起安全稳定的高可用kubernetes集…

53 最佳实践-安全最佳实践-虚拟机可信启动

文章目录 53 最佳实践-安全最佳实践-虚拟机可信启动53.1 概述53.2 配置vTPM设备,使能度量启动53.2.1 安装swtpm和libtpms软件53.2.2 虚拟机配置vTPM设备53.2.3 确认度量启动使能成功 53 最佳实践-安全最佳实践-虚拟机可信启动 53.1 概述 可信启动包含度量启动和远…

《深入理解计算机系统》练习题2.35

A.假定一个k位指数和n位小数的浮点格式,给出不能准确描述的最小正整数的公式(因为要想准确表示它需要n1位小数)。 B.对于单精度格式(k8,n23),这个整数的数字值是多少? 答案&#x…

服务器系统找不到分区,win10装系统找不到引导分区怎么办_网站服务器运行维护,win10...

cmd关闭端口的命令是什么_网站服务器运行维护 cmd关闭端口的命令是:【taskkill /pid “6789” /F】。在关闭端口前,我们需要执行【netstat -ano】命令查询端口,具体命令如【netstar -ano | findstr “123456”】。 win10装系统找不到引导分区…

黑客入门教程(非常详细)从零基础入门到精通,看完这一篇就够了

首先要明白啊,我们现在说的黑客不是那种窃取别人信息、攻击别人系统的黑客,说的是调试和分析计算机安全系统的网络安全工程师。 黑客技术的核心就是渗透攻防技术,是为了证明网络防御按照预期计划正常运行而提供的一种机制。就是通过模拟恶意…

C语言:实现有序序列判断

题目: 输入一个整数序列,判断是否是有序序列,有序,指序列中的整数从小到大排序或者从大到小排序(相同元素也视为有序)。 输入描述: 第一行输入一个整数N (3≤N≤50) 。 第二行输入N个整数,用空格分隔N个整数…