当前位置: 首页 > news >正文

DockerDocker Compose安装(离线+在线)

Docker&Docker Compose安装(离线+在线)

Docker离线安装

下载想要安装的docker软件版本:https://download.docker.com/linux/static/stable/x86_64/
如目标机无法从链接下载,可以在本机下载后 scp docker版本压缩包[如docker-20.10.9.tgz] username@host:port:yourpath
解压软件包:tar -xvzf docker-20.10.9.tgz

mv docker/* /usr/bin 【此处路径配置错会导致start docker.service失败】

进入目录/etc/systemd/system/ ,创建并编辑文件 docker.service,填入以下内容:

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target

关闭防火墙并启动docker,执行命令:

[root@localhost home]#  systemctl stop firewalld
[root@localhost home]#  systemctl daemon-reload
[root@localhost home]#  systemctl start docker
[root@localhost home]#  systemctl enable docker

检查docker是否启动

docker version

Docker在线安装

Docker是一种用于容器化应用程序的开源平台,它使得应用程序能够在容器中独立运行,提供了更高的可移植性和便携性。要在Linux系统上进行Docker的在线安装,通常需要以下步骤:

注意:在执行下面的步骤之前,请确保你有权限执行命令,或者使用sudo或root用户登录系统。

更新包管理器:

在开始安装之前,首先要确保包管理器的软件列表是最新的。你可以使用以下命令来更新软件包列表:

sudo apt update

安装依赖包:

Docker需要一些依赖包支持,你可以使用以下命令安装这些依赖包:

sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

添加Docker官方仓库:

接下来,需要将Docker官方的APT仓库添加到你的系统。执行以下命令:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

然后,添加Docker APT仓库:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

请根据你的Linux发行版适配仓库地址。上面的命令适用于Ubuntu,如果你使用不同的发行版,可以参考Docker官方文档获取相应的仓库地址。
更新软件包列表:

添加仓库后,再次更新软件包列表:

sudo apt update

安装Docker:

最后,使用以下命令安装Docker:

sudo apt install -y docker-ce docker-ce-cli containerd.io

这将安装Docker的主要组件。
启动Docker服务:

安装完成后,你可以启动Docker服务:

sudo systemctl start docker

你还可以设置Docker在系统启动时自动启动:
sudo systemctl enable docker
验证Docker安装:

最后,你可以运行以下命令来验证Docker是否成功安装:

sudo docker --version

这应该显示Docker的版本信息。
现在,Docker已经成功安装在你的Linux系统上,你可以开始使用Docker来容器化应用程序并进行容器管理。如果你是新手,可以参考Docker官方文档和教程以了解更多关于Docker的信息和用法。

以上apt命令(包管理器)是Ubuntu / Debian所使用的,而其他发行版使用:

Ubuntu / Debian:使用apt包管理器,更新命令是apt update。
Red Hat / CentOS:使用yum或dnf包管理器,更新命令是yum update或dnf update。
Fedora:使用dnf包管理器,更新命令是dnf update。
openSUSE:使用zypper包管理器,更新命令是zypper refresh或zypper update。
因此,要根据你使用的Linux发行版选择正确的包管理器和相应的更新命令。上面提到的示例是基于常见的发行版,特定发行版可能会有些不同。在执行包管理器相关的操作之前,最好查阅相应发行版的文档以获取准确的命令和信息。

docker-compose在线安装

下载路径: https://github.com/docker/compose/releases
配置可执行路径

mv docker-compose-Linux-x86_64 /usr/local/bin/ docker-compose
chmod +x /usr/local/bin/docker-compose
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

检查是否安装成功

docker-compose version

docker-compose离线安装

Docker Compose 是 Docker 的官方工具,用于定义和运行多个容器的应用程序。通常,Docker Compose 是在线安装的,它会从 Docker 官方仓库下载并安装最新的版本。但如果你需要进行离线安装,你可以手动下载适合你系统的 Docker Compose 二进制文件,并将其复制到系统上。以下是在Linux上进行 Docker Compose 离线安装的一般步骤:

下载适合你系统的 Docker Compose 二进制文件:

在你的本地系统或具有互联网访问权限的其他计算机上,前往 Docker Compose 的官方 GitHub 仓库的 Releases 页面,找到适合你操作系统的最新版本的 Docker Compose 二进制文件。下载地址通常是:

https://github.com/docker/compose/releases

请根据你的操作系统选择正确的版本,并下载与你的系统兼容的 Docker Compose 二进制文件。一般情况下,你可以使用curl命令来下载:

curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

这个命令会下载最新版本的 Docker Compose 并保存到 /usr/local/bin/docker-compose
赋予执行权限:

下载完 Docker Compose 后,需要为二进制文件赋予执行权限。你可以使用以下命令:

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

验证安装:

安装完成后,可以运行以下命令来验证 Docker Compose 是否成功安装:

docker-compose --version

这应该显示 Docker Compose 的版本信息。
现在,你已经成功地在Linux上进行了Docker Compose的离线安装。你可以使用docker-compose命令来定义和运行多个容器的应用程序,就像在线安装一样。请注意,在执行离线安装前,确保你已经满足 Docker Compose 的系统要求,并选择适合你操作系统的正确版本。

相关文章:

DockerDocker Compose安装(离线+在线)

Docker&Docker Compose安装(离线在线) Docker离线安装 下载想要安装的docker软件版本:https://download.docker.com/linux/static/stable/x86_64/ 如目标机无法从链接下载,可以在本机下载后 scp docker版本压缩包[如docker-20.10.9.tgz] usernameh…...

【泰克生物】酵母展示建库技术解析:构建高质量抗体文库的实用指南

酵母展示库是抗体酵母展示服务的核心组成部分。酵母展示技术利用酵母细胞表面的展示系统,将目标蛋白质(如抗体)展示在细胞膜上。这一过程首先涉及到将抗体基因克隆到酵母表达载体中。随后,表达载体被转化到酵母细胞中,…...

QT Mode/View之View

目录 概念 使用已存在的视图 使用模型 使用模型的多个视图 处理元素的选择 视图间共享选择 概念 在模型/视图架构中,视图从模型中获取数据项并将它们呈现给用户。数据的表示方式不必与模型提供的数据表示形式相似,而且可能与用于存储数据项的底层数…...

URP 线性空间 ui资源制作规范

前言: 关于颜色空间的介绍,可参阅 unity 文档 Color space URP实现了基于物理的渲染,为了保证光照计算的准确,需要使用线性空间; 使用线性空间会带来一个问题,ui资源在unity中进行透明度混合时&#xff…...

如何精确统计Pytorch模型推理时间

文章目录 0 背景1 精确统计方法2 手动synchronize和Event适用场景 0 背景 在分析模型性能时需要精确地统计出模型的推理时间,但仅仅通过在模型推理前后打时间戳然后相减得到的时间其实是Host侧向Device侧下发指令的时间。如下图所示,Host侧下发指令与De…...

Mybatis-plus-Generator 3.5.5 自定义模板支持 (DTO/VO 等) 配置

随着项目节奏越来越快,为了减少把时间浪费在新建DTO 、VO 等地方,直接直接基于Mybatis-plus 这颗大树稍微扩展一下,在原来生成PO、 DAO、Service、ServiceImpl、Controller 基础新增。为了解决这个问题,网上找了一堆资料&#xff…...

C#环境下MAC地址获取方法解析

在C#中,获取MAC地址并不是直接支持的,因为出于安全和隐私的考虑,操作系统通常会限制对这类硬件信息的直接访问。不过,仍然可以通过一些方法间接地获取到本地网络接口(比如以太网接口)的MAC地址。 以下是几…...

(k8s)Kubernetes 从0到1容器编排之旅

一、引言 在当今数字化的浪潮中,Kubernetes 如同一艘强大的航船,引领着容器化应用的部署与管理。它以其卓越的灵活性、可扩展性和可靠性,成为众多企业和开发者的首选。然而,要真正发挥 Kubernetes 的强大威力,仅仅掌握…...

Rust Web开发框架对比:Warp与Actix-web

文章目录 Rust Web开发框架对比:Warp与Actix-web引言框架概述Warp框架简介Actix-web框架简介 设计理念Warp的设计理念Actix-web的设计理念 性能比较可扩展性和生态插件和中间件支持社区和文档 使用示例使用Warp构建简单的HTTP服务使用Actix-web构建简单的HTTP服务 学…...

F12抓包12:Performance(性能)前端性能分析

课程大纲 使用场景: ① 前端界面加载性能测试。 ② 导出性能报告给前端开发。 复习:后端(接口)性能分析 ① 所有请求耗时时间轴:“网络”(Network) - 概览。 ② 单个请求耗时:“网络”(Network&#xf…...

数据结构(Day13)

一、学习内容 内存空间划分 1、一个进程启动后,计算机会给该进程分配4G的虚拟内存 2、其中0G-3G是用户空间【程序员写代码操作部分】【应用层】 3、3G-4G是内核空间【与底层驱动有关】 4、所有进程共享3G-4G的内核空间,每个进程独立拥有0G-3G的用户空间 …...

链表的快速排序(C/C++实现)

一、前言 大家在做需要排名的项目的时候,需要把各种数据从高到低排序。如果用的快速排序的话,处理数组是十分简单的。因为数组的存储空间的连续的,可以通过下标就可以简单的实现。但如果是链表的话,内存地址是随机分配的&#xf…...

css总结(记录一下...)

文字 语法说明word-wrapword-wrap:normal| break-word normal:使用浏览器默认的换行 break-word:允许在单词内换行 text-overflow clip:修剪文本 ellipsis:显示省略符号来代表被修剪的文本 text-shadow可向文本应用的阴影。能够规定水平阴影、垂直阴影、模糊距离,以…...

SpringBoot 处理 @KafkaListener 消息

消息监听容器 1、KafkaMessageListenerContainer 由spring提供用于监听以及拉取消息,并将这些消息按指定格式转换后交给由KafkaListener注解的方法处理,相当于一个消费者; 看看其整体代码结构: 可以发现其入口方法为doStart(),…...

Spring Boot-API版本控制问题

在现代软件开发中,API(应用程序接口)版本控制是一项至关重要的技术。随着应用的不断迭代,API 的改动不可避免,如何在引入新版本的同时保证向后兼容,避免对现有用户的影响,是每个开发者需要考虑的…...

Git 提取和拉取的区别在哪

1. 提取(Fetch) 操作说明:Fetch 操作会从远程仓库下载最新的提交、分支信息等,但不会将这些更改合并到你当前的分支中。它只是将远程仓库的更新信息存储在本地,并不会自动修改你当前的工作区。 使用场景: …...

【数据结构与算法 | 每日一题 | 力扣篇】力扣2390, 2848

1. 力扣2390:从字符串中删除星号 1.1 题目: 给你一个包含若干星号 * 的字符串 s 。 在一步操作中,你可以: 选中 s 中的一个星号。移除星号 左侧 最近的那个 非星号 字符,并移除该星号自身。 返回移除 所有 星号之…...

破解信息架构实施的密码:常见挑战与最佳解决方案全指南

信息架构的成功实施是企业数字化转型的关键步骤,但在实际操作中,企业往往会遇到各种复杂的挑战。这些挑战包括 技术整合的难度、数据管理的复杂性、合规性要求的变化 以及 资源限制 等。《信息架构:商业智能&分析与元数据管理参考模型》为…...

CodeChef Starters 151 (Div.2) A~D

codechef是真敢给分,上把刚注册,这把就div2了,再加上一周没打过还是有点不适应的,好在最后还是能够顺利上分 今天的封面是P3R的设置菜单 我抠出来做我自己的游戏主页了( A - Convert string 题意 在01串里面可以翻转…...

Redis学习——数据不一致怎么办?更新缓存失败了又怎么办?

文章目录 引言正文读写缓存的数据一致性只读缓存的数据一致性删除和修改数据不一致问题操作执行失败导致数据不一致解决办法 多线程访问导致数据不一致问题总结 总结参考信息 引言 最近面试快手的时候被问到了缓存不一致怎么解决?一开始还是很懵的,因为…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分:体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分:体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

离线语音识别方案分析

随着人工智能技术的不断发展,语音识别技术也得到了广泛的应用,从智能家居到车载系统,语音识别正在改变我们与设备的交互方式。尤其是离线语音识别,由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力,广…...

API网关Kong的鉴权与限流:高并发场景下的核心实践

🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 引言 在微服务架构中,API网关承担着流量调度、安全防护和协议转换的核心职责。作为云原生时代的代表性网关,Kong凭借其插件化架构…...

实战设计模式之模板方法模式

概述 模板方法模式定义了一个操作中的算法骨架,并将某些步骤延迟到子类中实现。模板方法使得子类可以在不改变算法结构的前提下,重新定义算法中的某些步骤。简单来说,就是在一个方法中定义了要执行的步骤顺序或算法框架,但允许子类…...

pgsql:还原数据库后出现重复序列导致“more than one owned sequence found“报错问题的解决

问题: pgsql数据库通过备份数据库文件进行还原时,如果表中有自增序列,还原后可能会出现重复的序列,此时若向表中插入新行时会出现“more than one owned sequence found”的报错提示。 点击菜单“其它”-》“序列”,…...

LangChain【6】之输出解析器:结构化LLM响应的关键工具

文章目录 一 LangChain输出解析器概述1.1 什么是输出解析器?1.2 主要功能与工作原理1.3 常用解析器类型 二 主要输出解析器类型2.1 Pydantic/Json输出解析器2.2 结构化输出解析器2.3 列表解析器2.4 日期解析器2.5 Json输出解析器2.6 xml输出解析器 三 高级使用技巧3…...

大模型——基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程

基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程 下载安装Docker Docker官网:https://www.docker.com/ 自定义Docker安装路径 Docker默认安装在C盘,大小大概2.9G,做这行最忌讳的就是安装软件全装C盘,所以我调整了下安装路径。 新建安装目录:E:\MyS…...

【1】跨越技术栈鸿沟:字节跳动开源TRAE AI编程IDE的实战体验

2024年初,人工智能编程工具领域发生了一次静默的变革。当字节跳动宣布退出其TRAE项目(一款融合大型语言模型能力的云端AI编程IDE)时,技术社区曾短暂叹息。然而这一退场并非终点——通过开源社区的接力,TRAE在WayToAGI等…...