Docker-compose简单了解

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Docke Docker-compose

Docker-compose简单了解
一、简单了解-->概述
一)、官方提供的容器编排工具:Docker-compose特点:
二)、Docker-compose安装
三)、浅实践下
四).以上步骤遇到问题及解决
一、简单了解–>概述
Docker-compose 容器编排,比如一个java应用,涉及到mysql,tomcat ,redis ,nginx等。docker可以通过脚本实现先后安装 各个容器,每个容器需要的依赖文件都做了关系绑定,只需要使用docker的容器编排工具

一)、官方提供的容器编排工具:Docker-compose特点:
1 、docker compose 单机多容器部署工具
docker compose 只能在一台宿主机做多容器部署,如果需要多台宿主机做集群,需要使用docker swarm ,k8s 实现集群部署
2、底层通过yml文件定义多容器如何部署
3、win/mac默认提供docker compose ,linux则需要安装
二)、Docker-compose安装
指定docker-compose安装路径:/usr/local/bin/

curl -SL https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

验证:
docker-compose --version
1
2
3
4
5
6
至此,安装完毕。

参考:Docker-compose官网安装

三)、浅实践下
通过docker-compose部署:WordPress项目

WordPress :是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQ数据库的服务器上架设WordPress。你可以使用WordPress搭建一个简单的独立博客,也可以把WordPress当作一个内容管理系统(CMS),用来搭建一个小门户网站,总之,现在的WordPress已经强大到几乎可以搭建目前所有常见类型的网站,比如门户、下载站、淘宝客、论坛、多博客等等。
step1: cd /usr ,创建wordpress ,并进入此目录,

参看:wordpress部署的项目指导

step1 :创建文件:vim /usr/wordpress/docker-compose.yml ,编辑内容并保存:
services:
db:

# We use a mariadb image which supports both amd64 & arm64 architecture
image: mariadb:10.6.4-focal
# If you really want to use MySQL, uncomment the following line
#image: mysql:8.0.27
command: '--default-authentication-plugin=mysql_native_password'
volumes:
  - db_data:/var/lib/mysql
restart: always
environment:
  - MYSQL_ROOT_PASSWORD=somewordpress
  - MYSQL_DATABASE=wordpress
  - MYSQL_USER=wordpress
  - MYSQL_PASSWORD=wordpress
expose:
  - 3306
  - 33060

wordpress:
image: wordpress:latest
volumes:

  - wp_data:/var/www/html
ports:
  - 80:80
restart: always
environment:
  - WORDPRESS_DB_HOST=db
  - WORDPRESS_DB_USER=wordpress
  - WORDPRESS_DB_PASSWORD=wordpress
  - WORDPRESS_DB_NAME=wordpress

volumes:
db_data:
wp_data:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
step2:解析并执行脚本docker compose up -d
up:表示直接对docker-compose.yml 解析自动部署并运行
执行docker ps 输出:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
57f320fd788f wordpress:latest "docker-entrypoint.s…" 2 minutes ago Up 2 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp wordpress-wordpress-1
8284fe1dd383 mariadb:10.6.4-focal "docker-entrypoint.s…" 2 minutes ago Up 2 minutes 3306/tcp, 33060/tcp wordpress-db-1
1
2
3
以上输出可查看到有自动做好的端口映射,有2个容器,一个是db容器,一个是wordpress容器,浏览器访问:宿主机ip,选择语言 注册后即可登录

小结:以上,通过docker-compose快速部署了一个wordpress应用, 通过一个yml 文件部署了多个容器,并且做了容器之间有效配置及完成了容器之间的互通互连,wordpress就是通过docker compose作为容器编排迅速完成自动化部署的代表样例

四).以上步骤遇到问题及解决
1、报错:curl: (92) HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
解决:git config --global http.version HTTP/1.1

2、报错:-bash: git: command not found
解决:
yum -y install git
git —version
————————————————
版权声明:本文为CSDN博主「甜可儿」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_17033579/article/details/133941446

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6月前
|
监控 Linux 持续交付
认识Docker
认识Docker
52 0
|
3月前
|
存储 安全 数据安全/隐私保护
在Docker中,Docker安全么?
在Docker中,Docker安全么?
|
13天前
|
存储 监控 安全
docker可能存在的问题有哪些?
【10月更文挑战第28天】docker可能存在的问题有哪些?
36 0
|
3月前
|
运维 持续交付 Docker
在Docker中,Docker可以用来做什么?
在Docker中,Docker可以用来做什么?
|
6月前
|
存储 程序员 Linux
什么是 Docker ?
本文介绍了容器技术的起源和Docker这一容器技术的简介。在传统开发过程中,环境搭建的重复性工作浪费了大量时间和资源。为了解决这个问题,容器技术应运而生,它减少了环境重复搭建的需求,提高了效率。相较于虚拟机,容器更轻量级,启动快速,资源利用率更高。Docker作为流行的容器技术,可以固化配置、自动化CI/CD流程、实现应用隔离、快速扩容缩容以及节省成本。Docker由客户端、守护进程和注册表服务组成,其核心概念包括镜像、容器和仓库。
|
6月前
|
运维 Java 虚拟化
[Docker] Docker为什么出现
[Docker] Docker为什么出现
|
6月前
|
Linux Go 开发者
Docker(一):认识Docker
Docker(一):认识Docker
|
6月前
|
JavaScript Linux Docker
【Docker】什么是Docker?
【4月更文挑战第20天】【Docker】什么是Docker?
|
运维 Java 程序员
【docker】对docker的理解
【docker】对docker的理解
|
Linux 测试技术 API
【Docker】Docker最近这么火,它到底是什么
【Docker】Docker最近这么火,它到底是什么