docker-compose安装和简单使用

2024-09-08 13:52

本文主要是介绍docker-compose安装和简单使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文介绍docker-compose的安装和使用

新版docker已经默认安装了docker-compose
可以使用docker-compose -v 查看docker-compose版本
如果没有的话可以使用以下命令直接安装

sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose

接下来就可以愉快的使用docker-compose了✌️

以下是一下docker-compose.yaml文件供参考(分别是memos(在线备忘录)和nextcloud(可以当一个nas服务使用)和nextcloud所依赖的数据库存储服务)一个简单的使用,本yaml指定了version、听说目前新版可以不用指定version,并且可以直接使用docker执行docker-compose.yaml文件,具体本人还没有使用过。

docker-compose up -d  ##就能直接启动容器了

之后就可以使用宿主机Ip加所映射的端口就可以访问所运行的服务了
例:127.0.0.1:5230就可以访问memos服务

version: '3'  # 使用 Docker Compose 文件版本 3volumes:nextcloud:  # Nextcloud 数据存储卷db:         # 数据库数据存储卷services:memos:image: neosmemo/memos:stable # 拉取的景像container_name: memos restart: always #容器启动方式 ports: - 5230:5230  # 端口映射 将容器内端口映射到宿主机上volumes: - /Volumes/catoData/memos:/var/opt/memos # 将容器内文件挂载到宿主机上db:image: mysql:8.0  # 使用 mysql 8.0 镜像restart: always  # 总是重新启动容器command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW  # 设置数据库命令和配置 volumes:- /Volumes/catoData/db:/var/lib/mysql   # 将数据库数据存储到卷中environment: # 环境变量- MYSQL_ROOT_PASSWORD=***    # 设置 MySQL root 用户密码(为空)- MYSQL_PASSWORD=***         # 设置 Nextcloud 数据库用户密码(为空)- MYSQL_DATABASE=nextcloud  # 设置 Nextcloud 数据库名- MYSQL_USER=nextcloud    # 设置 Nextcloud 数据库用户名app:image: nextcloud  # 使用 Nextcloud 镜像container_name: nextcloudrestart: always  # 总是重新启动容器ports:- 8080:80    # 映射容器端口 80 到主机端口 8080links:- db         # 与 db 服务建立链接volumes:- /Volumes/catoData/data:/var/www/html- /Volumes/catoData/allData:/var/myData   # 将 Nextcloud 数据存储到卷中environment:- MYSQL_PASSWORD=***           # 设置 Nextcloud 数据库用户密码(为空)- MYSQL_DATABASE=nextcloud  # 设置 Nextcloud 数据库名- MYSQL_USER=nextcloud      # 设置 Nextcloud 数据库用户名- MYSQL_HOST=db             # 指定数据库服务的主机名为 db

这篇关于docker-compose安装和简单使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1148294

相关文章

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

prometheus如何使用pushgateway监控网路丢包

《prometheus如何使用pushgateway监控网路丢包》:本文主要介绍prometheus如何使用pushgateway监控网路丢包问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录监控网路丢包脚本数据图表总结监控网路丢包脚本[root@gtcq-gt-monitor-prome

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

SpringBoot中如何使用Assert进行断言校验

《SpringBoot中如何使用Assert进行断言校验》Java提供了内置的assert机制,而Spring框架也提供了更强大的Assert工具类来帮助开发者进行参数校验和状态检查,下... 目录前言一、Java 原生assert简介1.1 使用方式1.2 示例代码1.3 优缺点分析二、Spring Fr

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected