Linux【Ubuntu】安装Docker配置docker-compose 编排工具

news/2025/2/21 10:41:46/

一:Docker具体安装传送门: 亲测有效

https://www.runoob.com/docker/ubuntu-docker-install.html

二:配置Docker编排工具docker-compose

1,下载Docker-compose

下载Docker-Compose(下载完毕就是一个文件docker-compose-Linux-x86_64)
下载完成后将 docker-compose-Linux-x86_64 文件复制到Linux系统的root目录下,执行以下指令

下载链接传送门

链接:https://pan.baidu.com/s/124vfP_N1kzBeiDAnITWHYg
提取码:xzq9

2,重命名、修改权限

mv docker-compose-Linux-x86_64 docker-composechmod 777 docker-compose

3,将docker-compose文件移动到$PATH中

echo $PATH

查看系统变量存放路径
在这里插入图片描述

mv docker-compose /usr/bin/

4,在任意位置输入docker-compose

这是最后一步,如下图所示,则配置成功!!!

在这里插入图片描述

三、docker-compose的使用

1,创建docker-compose.yml文本

1,创建docker-compose.yml文本: 注意在编写的时候,有的key: value之间是有空格的!!

初步模板说明如下:例如常用的属性进行说明,还有其他的属性字段可以按需去详细了解...

version: '3.1'
services:tomcat:                  		# 服务名称image: 镜像名称            	# 镜像标识restart: always           	# docker启动,当前容器必启动container_name: 容器名称    	# 容器名称ports:         				# 映射多个端口- 宿主机端口:容器端口- 宿主机端口:容器端口environment:     			# 编写多个环境- 环境名=环境值- 环境名=环境值volumes:           			# 映射多个数据卷- 宿主机相对yml文件的路径:容器的绝对路径- 宿主机相对yml文件的路径:容器的绝对路径 

示例如下:

version: '3.1'
services:mysql:image: "daocloud.io/library/mysql:5.7.5-m15"container_name: mysqlports:- "3306:3306"environment:MYSQL_ROOT_PASSWORD: "root"MYSQL_USER: 'root'MYSQL_PASS: 'root'volumes:- "./data:/var/lib/mysql"

示例说明:

version:版本号
services:管理的服务
mysql:自定义服务名(这里以mysql服务为例,取名mysql)
image:拉去好的镜像
container_name:启动容器标识名(一般与服务名一致)
ports:映射端口
environment:环境配置(里面配置的属性比较多,后续可以按需去了解)
volumes: 映射多个数据卷

上述中有提到数据卷:

2,了解一下数据卷

数据卷指定宿主机的一个目录,映射上容器内部的一个目录
在宿主机的目录中添加内容,容器内部的目录也会追加相应内容
在容器内部生成的内容或者追加的内容,也会生成到宿主机的目录中
宿主机的这个目录就是数据卷

数据卷可以解决两个问题:

1,容器内部命令不全,导致操作不方便。可以通过数据卷在宿主机操作,再映射到容器内部
2,存储型的中间件,如果容器删除,数据会丢失。可以通过数据卷将存储型中间件的持久化文件映射到宿主机中,即便容器删除,宿主机依然有持久化文件。

3,docker-compose常用命令

后续就可以通过docker-compose.yml文本管理容器信息
通过docker-compose up -d 启动容器
通过docker-compose down 停止并删除容器
通过docker-compose logs -f 标识 查看容器启动日志

通过docker-compose start/stop/rm/restart/up/down来启动容器/关闭容器/删除已经关闭的容器/重启容器/基于yml创建容器/停止并删除容器

基本的中间件,数据库以及微服务所用到的组件都可以通过Docker快速部署应用
如下所示Docker部署:能够很快上手环境搭建,而不用去手动配置繁琐的环境以及担心版本问题,减少学习成本、提高开发效率

在这里插入图片描述

到此为止,Docker就可以后续容器化快速部署和管理服务…


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

相关文章

C++ Web 编程

C Web 编程 什么是 CGI? 公共网关接口(CGI),是一套标准,定义了信息是如何在 Web 服务器和客户端脚本之间进行交换的。CGI 规范目前是由 NCSA 维护的,NCSA 定义 CGI 如下:公共网关接口&#xf…

使用MFT进行加密文件传输的7个好处

至少,托管文件传输(MFT)解决方案是一种产品,它包含入站和出站文件传输的所有方面,同时使用行业标准的网络协议和无缝加密。它可以从单个集中管理点在您的网络,系统,应用程序,贸易伙伴…

【STM32】STM32使用继电器

STM32使用继电器 其实继电器简单来说就是一个开关,VCC表示电源正极、GND表示电源负极、IN表示信号输入脚,COM表示公共端,NC(normal close)表示常闭端,NO(normal open)表示常开端。一般情况下是常闭状态。 …

UnityVR--Managers--对象池1

本篇中使用的API&#xff1a;gameObject.CompareTag("标签")、UnityEvent()事件管理、ObjectPool<GameObject>&#xff08;&#xff09;对象池 参照unity官方教程&#xff1a;Hi ObjectPool 目录 1. 应用场景 2. 对象池的原理 3. 查看资源消耗情况 4. 不使用…

什么是日志文件

文章目录 什么是日志文件Centos 7 日志文件简易说明日志文件的重要性Linux常见的日志文件文件名/var/log/boot.log/var/log/cron/var/log/dmesg/var/log/lastlog/var/log/maillog或 /var/log/mail/*/var/log/messages/var/log/secure/var/log/wtmp、/var/log/faillog/var/log/h…

Go语言网络编程:TCP、HTTP、Gin、WebSocket、RPC、gRPC入门实例

Go语言网络编程&#xff1a;TCP、HTTP、Gin、WebSocket、RPC、gRPC入门实例 在本文中&#xff0c;我们将介绍Go语言中的网络编程的不同方式&#xff0c;包括TCP、HTTP、Gin框架、WebSocket、RPC、gRPC的介绍与连接实例&#xff0c;并对所有示例代码都给出了详细的注释&#xf…

BoostSearch搜索引擎

今天讲的项目是基于C的Boost库的站内搜索引擎。因为Boost库内没有搜索关键字功能&#xff0c;所以在这里我们来手动实现一个这样的搜索引擎。当用户在输入框输入要查询的关键字后&#xff0c;就会快速查询出相关的 boost 库中的文档&#xff0c;弥补 boost 在线文档没有搜索功能…

使用 VS Code 快速搭建 ESP-IDF 开发环境 (Windows、Linux、MacOS)

ESP-IDF 是乐鑫官方的物联网开发框架&#xff0c;适用于 ESP32、ESP32-S、ESP32-C 和 ESP32-H 系列 SoC。它基于 C/C 语言提供了一个自给自足的 SDK&#xff0c;方便用户在这些平台上开发通用应用程序&#xff0c;并集成了大量的软件组件&#xff0c;包括 RTOS、外设驱动程序、…