CentOS下安装Docker,Docker下安装JDK\MYSQL\REDIS\NGINX

news2025/4/26 3:05:15

先用VM安装好Centos8.5,可以选择安装迷你版,我安装的是UI版。

然后用MobaXterm_Portable_v23.0_cn连上去,互访成功就可以往下操作。

1. 修改文件:就是要把之前的mirror替换成现在的vault

cd /etc/yum.repos.d/

sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*

sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
yum clean all && yum makecache
yum update -y

 2、如果以前有docker,可以先移除,

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine


3、安装所须依赖

 sudo yum install -y yum-utils \device-mapper-persistent-data \lvm2


4、设置稳定的仓库
清华大学源:

yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo


阿里云:

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

5、安装 Docker Engine-Community

yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin


安装过程中会出现两次:Is this ok [y/N]: y ,都输入y,然后按Enter键
如果提示您接受 GPG 密钥,请选是

如果上面报错:说什么runc版本低了就执行它:sudo dnf install runc --allowerasing
再执行yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin,centos7.9没有报错,7.7报的错可就难处理多了。

设置开机启动

systemctl enable docker.service

启动 Docker

systemctl start docker


docker --version查看版本,查看它是否启动了   ps -ef | grep docker

systemctl list-units --type=service

创建目录

mkdir -p /etc/docker

创建文件

touch /etc/docker/daemon.json

直接用m打开,改


加入,我找的有点多,重复的也有可能。

 {
     "registry-mirrors": [
         "http://www.docker-cn.com/registry-mirror",
         "https://docker.unsee.tech",
         "https://dockerpull.org",
         "https://docker.1panel.live",
         "https://dockerhub.icu",
         "https://hub-mirror.c.163.com",
         "https://mirrors.tencent.com",
         "https://docker.m.daocloud.io/",
"https://huecker.io/",
"https://dockerhub.timeweb.cloud",
"https://noohub.ru/",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn",
"https://xx4bwyg2.mirror.aliyuncs.com",
"http://f1361db2.m.daocloud.io",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
     ]
}
 sudo systemctl daemon-reload && sudo systemctl restart docke

拉报镜像

docker pull redis

查看镜像

docker images

安装redis

mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

在redis.conf中输入内容,直接用打开改。也可以用vi编辑器操作。

添加如下代码,密码是6个1

protected-mode no
appendonly yes
requirepass 111111

启动redis

docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
 -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
 -d redis redis-server /etc/redis/redis.conf

查看redis

docker ps -a

进入redis客户端

docker exec -it redis redis-cli

执行set test redis,遇到了如下提示不用慌,密码就是上面配置的6个1

测试,没有问题

接下来,我们用windows下的redis客户工具连接,用M或者R都可以。

,我这次用的是R。

连接成功是这样的

此时,总算完成了。

接下来,我们安装JDK及MYSQL还有NGINX.

把它们拉取下来:以下命令今天用起来挝快哦~~~

docker pull kdvolder/jdk8
docker pull mysql:8
docker pull nginx

查看镜像

接下来,我们创建容器id,上面的用了宝塔安装,太慢了?用了手动处理。

安装JDK

docker run -di --name=jdk1.8 kdvolder/jdk8

查看是否启动

进入容器查看版本

docker exec -it jdk1.8 /bin/bash

java -version

发现已经安装好了。

安装MySQL。

先做准备工作:

mkdir -p /mydata/mysql/data/
mkdir -p /mydata/mysql/config/
mkdir -p /mydata/mysql/logs/error.log
touch /mydata/mysql/config/my.cnf

my.cnf文件内容

[mysqld]
basedir=/mydata/mysql/
port=3306
# MySQL 数据存储路径
datadir=/mydata/mysql/data/

# MySQL 错误日志路径
log-error=/mydata/mysql/logs/error.log

# 启用远程连接
bind-address=0.0.0.0

# 设置字符集为 utf8mb4
character-set-server=utf8mb4

# 默认排序规则为 utf8mb4_0900_ai_ci,若需兼容 MySQL 5.7 可使用 utf8mb4_unicode_ci
collation-server=utf8mb4_0900_ai_ci

编写可执行的脚本(好玩)
 

touch /mydata/mysql/startMysql.sh

此命令必须是一行

docker run -d \--privileged=true \--name mysql8 \-p 3306:3306 \--restart=always \-v /mydata/mysql/data:/var/lib/mysql \-v /mydata/mysql/config/my.cnf:/etc/mysql/my.cnf \-e MYSQL_ROOT_PASSWORD=111111 mysql:8 \


-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。
-v -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。
-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。
-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。
-e MYSQL_ROOT_PASSWORD=111111:初始化 root 用户的密码。

授权

chmod -R 777 /mydata/mysql/startMysql.sh
chmod -R 777 /mydata/mysql/data
chmod -R 777 /mydata/mysql/logs
chmod -R 777 /mydata/mysql/config
chmod -R 777 /mydata/mysql/logs/error.log

执行sh文件

cd /mydata/mysql

./startMysql.sh

查看日志

docker logs mysql的容器id

查看docker中的容器

发现mysql启动了,期间报了好多错,通过查看日志解决了。不要慌。

假如此时我们利用远程连接,居然成功了。怎么不要我配置权限?因为

mysql8安装后 默认密码加密的插件不是mysql_native_password,所以之前老版本的mysql客户端工具不能直接使用密码连接必须升级到最新版本,或者修改mysql8密码加密的插件为mysql_native_password,我的比较新

还不如升级,不然还有下面操作:

#进入容器:env LANG=C.UTF-8 避免容器中显示中文乱码
docker exec -it mysql-8 env LANG=C.UTF-8 /bin/bash
#进入容器内的mysql命令行
mysql -uroot -p
#使用mysql_native_password密码插件创建新的账户root % 并使用它加密密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2325711.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

demo.launch(inbrowser=True, share=True)无法生成共享网址

Gradio 的共享功能无法正常工作,原因是缺少一个名为 frpc_windows_amd64_v0.3 用到代码 app.demo.launch(show_errorTrue, inbrowserTrue, shareTrue) show_errorTrue:这个参数的作用是当应用在启动过程中出现错误时,会显示错误信息。这对于调…

翻译: 人工智能如何让世界变得更美好二

Basic assumptions and framework 基本假设和框架 To make this whole essay more precise and grounded, it’s helpful to specify clearly what we mean by powerful AI (i.e. the threshold at which the 5-10 year clock starts counting), as well as laying out a fram…

【vue】editor富文本输入全英文,谷歌浏览器:元素不会自动换行bug

【vue】editor富文本输入全英文,谷歌浏览器:元素不会自动换行bug 解决方案:给元素一个宽度 100% .editor {width: 100%; }

# OpenCV实现人脸与微笑检测:从图像到视频的实战应用

OpenCV实现人脸与微笑检测:从图像到视频的实战应用 在计算机视觉领域,人脸检测和微笑检测是两个非常有趣且实用的任务。它们广泛应用于智能监控、社交媒体分析、人机交互等多个场景。本文将通过两个代码示例,详细介绍如何使用OpenCV实现人脸…

Kubernetes可视化面板——KubePi(Kubernetes Visualization Panel - kubepi)

Kubernetes可视化管理面板——KubePi 在云计算和容器化的大潮下,Kubernetes 已成为管理容器集群的事实标准。然而,面对复杂的集群管理和运维工作,一个直观、易用的可视化工具显得至关重要。KubePi 正是为此而生——一款专为简化 Kubernetes …

【区块链安全 | 第二十三篇】单位和全局可用变量(一)

文章目录 单位和全局可用变量(Units and Globally Available Variables)以太单位(Ether Units)时间单位(Time Units)保留关键字 单位和全局可用变量(Units and Globally Available Variables&am…

权重参数矩阵

目录 1. 权重参数矩阵的定义与作用 2. 权重矩阵的初始化与训练 3. 权重矩阵的解读与分析 (1) 可视化权重分布 (2) 统计指标分析 4. 权重矩阵的常见问题与优化 (1) 过拟合与欠拟合 (2) 梯度问题 (3) 权重对称性问题 5. 实际应用示例 案例1:全连接网络中的…

【现代深度学习技术】现代卷积神经网络06:残差网络(ResNet)

【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈PyTorch深度学习 ⌋ ⌋ ⌋ 深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重…

《异常检测——从经典算法到深度学习》30. 在线服务系统中重复故障的可操作和可解释的故障定位

《异常检测——从经典算法到深度学习》 0 概论1 基于隔离森林的异常检测算法 2 基于LOF的异常检测算法3 基于One-Class SVM的异常检测算法4 基于高斯概率密度异常检测算法5 Opprentice——异常检测经典算法最终篇6 基于重构概率的 VAE 异常检测7 基于条件VAE异常检测8 Donut: …

nut-ui下拉选的实现方式:nut-menu

nut-ui下拉选的实现方式:nut-menu 官方文档:https://nutui.jd.com/h5/vue/4x/#/zh-CN/component/menu 案例截图: nut-tab选项卡组件实现: 官方组件地址:https://nutui.jd.com/h5/vue/4x/#/zh-CN/component/tabs nut…

鸿蒙NEXT小游戏开发:扫雷

1. 引言 本文将介绍如何使用鸿蒙NEXT框架开发一个简单的扫雷游戏。通过本案例,您将学习到如何利用鸿蒙NEXT的组件化特性、状态管理以及用户交互设计来构建一个完整的游戏应用。 2. 环境准备 电脑系统:windows 10 工程版本:API 12 真机&…

LangChain4j 入门(二)

LangChain 整合 SpringBoot 下述代码均使用 阿里云百炼平台 提供的模型。 创建项目&#xff0c;引入依赖 通过 IDEA 创建 SpringBoot 项目&#xff0c;并引入 Spring Web 依赖&#xff0c;SpringBoot 推荐使用 3.x 版本。 引入 LangChain4j 和 WebFlux 依赖 <!--阿里云 D…

npm i 失败

当npm i 失败 且提示下面的错误 尝试降低npm 的版本 npm install npm6.14.15 -g

音视频基础(音视频的录制和播放原理)

文章目录 一、录制原理**1. 音视频数据解析****2. 音频处理流程****3. 视频处理流程****4. 同步控制****5. 关键技术点****总结** 二、播放原理**1. 音视频数据解析****2. 音频处理流程****3. 视频处理流程****4. 同步控制****5. 关键技术点****总结** 一、录制原理 这张图展示…

回溯(子集型):分割回文串

一、多维递归 -> 回溯 1.1&#xff1a;17. 电话号码的字母组合(力扣hot100&#xff09; 代码&#xff1a; mapping ["","", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv&qu…

2022年蓝桥杯第十三届CC++大学B组真题及代码

目录 1A&#xff1a;九进制转十进制 2B&#xff1a;顺子日期&#xff08;存在争议&#xff09; 3C&#xff1a;刷题统计 解析代码&#xff08;模拟&#xff09; 4D&#xff1a;修剪灌木 解析代码&#xff08;找规律&#xff09; 5E&#xff1a;X进制减法 解析代码1&…

1.oracle修改配置文件

1.找到oracle的安装路径 D:\app\baozi\product\11.2.0\dbhome_1\NETWORK\ADMIN &#xff0c;修改下面的两个文件。如果提示没有权限&#xff0c;可以先把这两个文件复制到桌面&#xff0c;修改完后&#xff0c;在复制回来。 2.查看自己电脑的主机名&#xff0c; 右击 - 此电脑 …

通义万相2.1 你的视频创作之路

通义万相2.1的全面介绍 一、核心功能与技术特点 通义万相2.1是阿里巴巴达摩院研发的多模态生成式AI模型&#xff0c;以视频生成为核心&#xff0c;同时支持图像、3D内容及中英文文字特效生成。其核心能力包括&#xff1a; 复杂动作与物理规律建模 能够稳定生成包含人体旋转、…

Muduo网络库实现 [四] - Channel模块

设计思路 具体来说每一个套接字都会对应一个 Channel 对象&#xff0c;用于对它的事件进行管理。可以对于描述符的监控事件在用户态更容易维护&#xff0c;以及触发事件后的操作流程更加的清晰 Channel模块是用于对一个描述符所需要监控的事件以及事件触发之后要执行的回调函…

XSS 攻击(详细)

目录 引言 一、XSS 攻击简介 二、XSS 攻击类型 1.反射型 XSS 2.存储型 XSS 3.基于 DOM 的 XSS 4.Self - XSS 三、XSS 攻击技巧 1.基本变形 2.事件处理程序 3.JS 伪协议 4.编码绕过 5.绕过长度限制 6.使用标签 四、XSS 攻击工具与平台 1.XSS 攻击平台 2.BEEF 五…