Docker--在linux安装软件
Docker
引用Docker原因是在linux中安装软件
以前在linux中安装软件,是直接安装在linux操作系统上,软件和操作系统耦合度很高,不方便管理,因为linux版本不同,环境也就改变了
docker是一种容器技术,提供标准的应用镜像(包含应用+应用的依赖),这样我们就可以非常轻松的在docker中安装应用。每一个应用安装好后,就是一个独立的容器。
总结:docker解决了软件环境迁移问题
主要功能:
1.打包:可以把软件以及软件的依赖打包制作成一个镜像(例如后面吧springboot和jdk)
2.分发:你可以把你打包好的“安装包”上传到镜像仓库,其他人也可以很方便的获取和安装
3.部署:拿着"安装包"就可以一个命令运行起来你的应用,自动模拟出一模一样的运行环境,不管是在Windows/Mac/Linux
主要概念:
仓库(Repository):是docker提供的一个用来保存镜像的仓库
镜像(Image):镜像就是一个可执行的包,用来创建容器,docker中每一个软件就是一个镜像(包含应用+应用的依赖)
容器(Container):容器就是镜像运行时的实体。容器可以被创建,启动,停止,删除,暂停等。
Docker安装:
1.安装yum配置工具:
yum install -y yum-utils
2.配置docker的yum源
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.安装:
yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
4.启动常用命令
docker安装成功后并没有启动,
启动命令
systemctl start docker
关闭命令
systemctl stop docker
设置开机自动启动
systemctl enable docker
5.测试docker版本:
docker -v
Docker卸载:
1.停止服务
systemctl stop docker
2.卸载
yum remove docker-ce docker-ce-cli containerd.io docker-compose-plugin
3.删除文件
rm -rf /var/lib/docker
rm -rf /var/lib/containerd
Docker配置:
配置镜像加速
1.在etc下创建docker目录
mkdir -p /etc/docker
2.进入docker目录
cd /etc/docker
3.创建daemon.json文件
touch daemon.json
4.修改文件
vim daemon.json
{
"registry-mirrors": ["https://dockerhub.icu"]
}
5.重载配置
systemctl daemon-reload
6.重启
systemctl restart docker
Docker服务命令:
1.Docker镜像命令
查看镜像列表:
docker images
从docker仓库拉去镜像到本地仓库:
docker pull mysql:8.0
删除本地镜像:
docker rmi mysql:8.0
从dockerfile构建镜像:
docker build
保存镜像到本地,生成tar文件(tar是linux中的压缩文件格式)
docker save > mysql.tar
载入本地镜像:
docker load < mysql.tardocker load -i <镜像文件>.tar
'-i’选项表示输入文件,这样 Docker 知道从哪里读取镜像数据。如果不加'-ì',默认是从标准输入读取数据,因此需要加上'-ì和文件名来指定镜像文件。
推送镜像到服务器(目前用不到):
docker push
Docker容器命令
1.创建一个新的容器并运行:
docker run 镜像名
2.查看
docker ps -a
3.启动容器
docker start mysql
4.停止mysql
docker stop mysql
5.删除容器(卸载软件)
docker rm mysql
6.查看容器日志
docker logs mysql
安装Mysql
1.下载mysql镜像
在线下载:
docker pull mysql:8.0
加载本地镜像
docker load < mysql.tardocker load -i <镜像文件>.tar
2.安装
docker run -d -p 3306:3306 \
//-p:指定端口映射 3306:3306端口号映射 -d:让容器后台运行
--name mysql \ //指定容器名称
--restart=always \ //自动启动
--privileged=true \ //拥有特权
-e TZ=Asia/Shanghai \ //时区
-e MYSQL_ROOT_PASSWORD=root\ //密码
mysql:8.0 //镜像
3.进入到容器
docker exec -it 容器名/容器id bash
4.登录mysql
mysql -uroot -proot
5.修改root账号加密方式
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root'
6.退出
exit
7.进入mysql把sql备份,然后新建一个连接,连接到虚拟机,在新的连接中打开备份的数据库
镜像和容器
镜像(Image):Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。
容器(Container):镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对 外不可见。
数据卷挂载
数据卷是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。 它将宿主机目录映射到容器内目录,方便我们操作容器内文件,或者方便迁移容器产生的数据。 在执行docker run命令时,使用-v数据卷:容器内目录可以完成数据卷挂载。
创建mysql数据卷
mkdir -p /opt/mysql/data
安装
docker run -d -p 3306:3306 \
--name mysql \
--restart=always \
--privileged=true \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=root \
-v /opt/mysql/data:/var/lib/mysql \ //数据卷映射
mysql:8.0
安装后续可看上述mysql安装步骤
Docker安装nginx
Nginx是一款是由俄罗斯的程序设计师所开发高性能的 Web服务器(只能运行前端项目,不能运行 java项目)。
其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好, 中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等等。
Nginx专为性能优化而开发,性能是服务器最重要的考量,实现上非常注重效率,能经受高负载的 考验,据报告能支持高达50,000个并发连接数。
拉取镜像:
docker pull nginx:1.24
创建数据卷:
mkdir -p /opt/nginx/html
安装命令:
docker run -d -p 80:80 \
--name nginx \
--restart=always \
--privileged=true \
-v /opt/nginx/html:/usr/share/nginx/html \
nginx:1.24
访问:
自己的ip:80
其中 -v /opt/nginx/html 就是与容器中对应的一个在宿主机中的数据卷 我们只需要将文件部署到宿主机的/opt/nginx/html目录下即可
相关文章:
Docker--在linux安装软件
Docker 引用Docker原因是在linux中安装软件 以前在linux中安装软件,是直接安装在linux操作系统上,软件和操作系统耦合度很高,不方便管理,因为linux版本不同,环境也就改变了 docker是一种容器技术,提供标…...
知识库与RAG
认识知识库的技术原理 第一步:📖➡️📈将文档的文本转换为向量,向量存储到向量数据库。第二步:🗨️➡️🔍将用户的提问内容转换成向量,在向量数据库中检索相似的文本内容࿰…...
【2024最新】C++扫描线算法介绍+实战例题
扫描线介绍:OI-Wiki 【简单】一维扫描线(差分优化) 网上一维扫描线很少有人讲,可能认为它太简单了吧,也可能认为这应该算在差分里(事实上讲差分的文章里也几乎没有扫描线的影子)。但我认为&am…...
语言主要是一种交流工具,而不是思维工具?GPT5何去何从?
引言 在人工智能领域,特别是大语言模型(LLM)的发展中,语言和思维的关系一直是一个备受关注的话题。近期,麻省理工学院(MIT)在《Nature》杂志上发表了一篇题为《Language is primarily a tool f…...
传感器标定(三)激光雷达外参标定(lidar2ins)
一、数据采集 1、LiDAR 传感器的 LiDAR PCD 数据 2、来自 IMU 传感器的姿势文件 3、手动测量传感器之间外部参数初始值并写入的 JSON 文件 二、下载标定工具 //总的git地址: https://github.com/PJLab-ADG/SensorsCalibration git地址: https://githu…...
【漏洞复现】Crocus系统—Download 文件读取
声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。 一、漏洞描述 Crocus系统中的Download文件读取漏洞允许未经身份验证的攻击者通过特定请求读取系统上的任意文件。Crocu…...
游戏开发面试题1
说说对单例模式的了解 单例模式(Singleton Pattern)是一种设计模式,其目的是确保一个类只有一个实例,并提供一个全局访问点来访问该实例。这在某些情况下非常有用,比如需要一个唯一的配置管理器、日志记录器、或资源管…...
线程池笔记
笔记梳理 前言.PHONYC标准库头文件C/C通用或C特有头文件mkdirc_str()snprintfvsnprintfumaskopen函数可变参数列表va_startva_endfunctionalstatic_castpthread_cond_init_threads.emplace_backstd::bindstd::placeholdersThreadPool(const ThreadPool<T> &tp) dele…...
Go语言基础数据类型、变量及自增语法
本文内容为Go语言的基础数据类型、变量定义和赋值及自增语法介绍。 目录 基础数据类型 变量 先定义后赋值 定义时直接赋值 自动推导定义赋值 平行赋值 自增语法 总结 基础数据类型 int,int8 intl6, int32, int64 uint8... uint64 float32,float64 true/false 变量 …...
ES6-ES13符号:单双引号、变量的解构赋值、占位符 、字符串模版`${} `、扩展运算符...、?,??,_,||=,=,in
原型、this、闭包,for四类循环,ES6-14(2023)_es6-es14-CSDN博客 目录 查看ES版本 单双引号:无区别 变量的解构赋值:声明变量被数组/对象中的元素赋值 推荐用const,因为是从其他地方获取值 …...
【远景能源25届校招PI测评】题型深度解析与应试策略
摘要: 远景能源作为新能源行业的领军企业,其校园招聘备受瞩目。本文将深入分析25届远景能源校招的PI测评题型,为求职者提供全面的备考指南。 正文: 尊敬的求职者们,您是否正准备迎接远景能源的校招挑战?P…...
关于Qt Creator 使用Qt Quick的Design模式设置
关于使用Qt Quick的Design模式设置: 如描述所言: 如果使用Design模式打开qml文件失败显示如下: 首先确认自己是否安装了Qt Design Studio 如果安装了仍然不显示,则需要勾选下面三个地方才能用Design模式打开.ui.qml文件&#…...
Spring常见问题一:IOC和DI
IOC和DI IOC和DI之间到底是什么关系? 什么是依赖关系?依赖关系会带来什么问题?Spring是怎么来支持依赖注入的? 引言 在现代软件开发中,面向对象编程(OOP)已经成为主流编程范式。然而࿰…...
LabVIEW红外热波图像缺陷检
开发使用LabVIEW开发的红外热波图像缺陷检测系统。该系统结合红外热像仪、工业相机和高效的数据采集硬件,实现对工件表面缺陷的自动检测和分析。通过LabVIEW的强大功能,系统能够实时采集、处理和显示红外热波图像,有效提高了检测的精度和效率…...
c#与欧姆龙PLC通信——如何更改PLC的IP地址
前言 我们有时候需要改变欧姆龙Plc的ip地址,下图有两种更改方式,一种是已知之前Plc设置的Ip地址,还有一种是之前不知道Pl的Ip地址是多少,下面分别做介绍。 1、已知PLC的IP地址的情况下更改地址 假设已知PLC的Ip地址,比如本文中PLC的IP为192.168.1.2,我首先将电脑的IP地…...
[Spring Boot]定时任务因系统时间修改之后无法执行
问题描述 当Spring Boot启动时,当前时间为2024-01-01 00:00:00。 此时你创建了任务: 每10秒钟触发一次定时任务 Scheduled(cron "0/10 * * * * ? ") public void scheduledTask() { }此时你手动修改了系统时间,修改为2023-12-0…...
【棋盘上的战舰】python刷题记录
目录 小前言 思路: 上代码 lucky ending 小前言 经过漫长的停更周期-----1个月 我决定铁血回归!!! 思路: 两层for循环暴力最快了这种小小范围题,主要是第一行和第一列的边界处理,我分为…...
NoSQL 之Redis集群
Redis集群 主从复制 主从复制(Replication)是 Redis 中一种基本的高可用架构模式,适用于简单的读写分离需求和基本的故障恢复。在主从复制中,一个 Redis 主节点可以拥有多个从节点,主要特点包括: 角色定义&…...
ES13的4个改革性新特性
1、类字段声明 在 ES13 之前,类字段只能在构造函数中声明, ES13 消除了这个限制 // 之前 class Car {constructor() {this.color = blue;this.age = 2...
Flutter EasyRefresh:介绍与使用指南
什么是 Flutter EasyRefresh? Flutter EasyRefresh 是一个强大的下拉刷新和上拉加载组件,用于构建流畅且高效的 Flutter 应用程序。它提供了多种自定义配置和动画效果,使开发者可以轻松实现列表的刷新和加载功能。 主要功能 支持下拉刷新和…...
全原子设计驱动的蛋白质工程:RFDiffusionAA技术原理与实战指南
全原子设计驱动的蛋白质工程:RFDiffusionAA技术原理与实战指南 【免费下载链接】rf_diffusion_all_atom Public RFDiffusionAA repo 项目地址: https://gitcode.com/gh_mirrors/rf/rf_diffusion_all_atom 在药物研发与蛋白质工程领域,如何高效设计…...
丹青识画系统在网络安全中的应用:图像内容安全审核实战
丹青识画系统在网络安全中的应用:图像内容安全审核实战 最近和几个做内容平台的朋友聊天,他们都在头疼同一个问题:用户上传的图片越来越多,人工审核根本看不过来,而且尺度很难把握。漏掉一张违规图,可能就…...
终极指南:5分钟掌握Awoo Installer,轻松搞定Switch游戏安装
终极指南:5分钟掌握Awoo Installer,轻松搞定Switch游戏安装 【免费下载链接】Awoo-Installer A No-Bullshit NSP, NSZ, XCI, and XCZ Installer for Nintendo Switch 项目地址: https://gitcode.com/gh_mirrors/aw/Awoo-Installer 还在为Switch游…...
造相-Z-Image-Turbo亚洲美女LoRA入门指南:开箱即用的图片生成服务
造相-Z-Image-Turbo亚洲美女LoRA入门指南:开箱即用的图片生成服务 1. 服务概览与核心价值 造相-Z-Image-Turbo亚洲美女LoRA是一个基于Z-Image-Turbo模型的图片生成Web服务,特别集成了laonansheng/Asian-beauty-Z-Image-Turbo-Tongyi-MAI-v1.0 LoRA模型…...
Bottlerocket容器健康检查终极指南:自定义探针与系统指标深度集成
Bottlerocket容器健康检查终极指南:自定义探针与系统指标深度集成 【免费下载链接】bottlerocket An operating system designed for hosting containers 项目地址: https://gitcode.com/gh_mirrors/bo/bottlerocket Bottlerocket是一款专为容器化工作负载设…...
多视图数据太‘脏’怎么办?手把手教你用对比学习过滤视图私有噪声
多视图数据噪声过滤实战:对比学习在特征提纯中的应用 当面对来自多个来源的异构数据时,数据科学家们常常陷入两难——如何有效整合这些信息,同时避免噪声干扰?传统方法往往简单粗暴地融合所有视图,却忽视了不同数据源特…...
嵌入式系统架构和微处理器深入分析和总结
嵌入式系统架构和微处理器深入分析与总结 嵌入式系统的核心是架构与微处理器的有机结合。架构定义了系统的“思维方式和规则”,而微处理器则是执行这些规则的“物理引擎”。 第一部分:嵌入式系统架构 嵌入式系统架构是指系统的结构、组件及其相互关系的宏观设计。它决定了系…...
如何用Xournal++高效管理数字笔记:5个实用场景完全指南
如何用Xournal高效管理数字笔记:5个实用场景完全指南 【免费下载链接】xournalpp Xournal is a handwriting notetaking software with PDF annotation support. Written in C with GTK3, supporting Linux (e.g. Ubuntu, Debian, Arch, SUSE), macOS and Windows 1…...
3步解锁Windows PDF处理新高度:Poppler预编译包深度解析
3步解锁Windows PDF处理新高度:Poppler预编译包深度解析 【免费下载链接】poppler-windows Download Poppler binaries packaged for Windows with dependencies 项目地址: https://gitcode.com/gh_mirrors/po/poppler-windows 你是否还在为Windows平台上复杂…...
3分钟掌握qmcdump:一键解锁QQ音乐加密文件,让音乐自由播放
3分钟掌握qmcdump:一键解锁QQ音乐加密文件,让音乐自由播放 【免费下载链接】qmcdump 一个简单的QQ音乐解码(qmcflac/qmc0/qmc3 转 flac/mp3),仅为个人学习参考用。 项目地址: https://gitcode.com/gh_mirrors/qm/qmc…...
