(天翼云)云主机上传RockyLinux9.X 自定义私有镜像教程 SSH客户端无法连接解决方法,安装docker-ce,mysql redis 容器

概要

随着技术的更新迭代,作为一个IT从业者,在工作中踩过很多很坑,尤其实在环境搭建中遇到过各种不兼容问题,刚入行的同行或者工作多年老手,都会因为成本问题,通常会在本地电脑安装虚拟机,比较常用的虚拟机VMware Workstation 和 VirtualBox用的比较多,VMware Workstation是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发、测试 、部署新的应用程序的最佳解决方案。VirtualBox是一款开源虚拟机软件,号称是最强的免费虚拟机软件,都用过各有各的特点吧,个人偏向使用前者,桌面操作方便些。通过虚拟机安装对应的系统镜像,例如centos 、ubunto、openeluer、rockylinux 等,centos 停更后 比较推荐rockylinux9.x版本

实际在开发过程,一般都会有多套环境,例如开发,测试,回归,预发布,生产等环境,一般是根据项目周期和预算决定,环境与环境可能会因考虑成本存在差异。比如测试用的是自己机房的服务器,生产环境用的云服务器,云服务器一般都有云厂商提供的公共系统镜像,每个云厂商的共公系统镜像可能会存在版本间的差异。

用云服务有很多优点,可以选择多节点,不同地区的资源池,业务量增大,扩容方便,只要钱到位就行,还有一个最大的有点就是遇到问题可以提工单,将会有一群云产商的运维人员帮您解决问题。

大多数公司基本都会用的都到云服务器,所以建议程序员可以购买一台丐版云服务器,(云厂商基本都有新人特惠福利,2核2G的,99元,遇到活动可能会更低价拿下)熟悉一下云服务器的使用套路,提升一下项目部署的能力,项目部署也是程序员必备的技能,云服务器对应程序源来说也是很润的,因为它有公网ip ,可以通过它访问服务,部署个mysql ,redis, mq 等服务,用到的项目都可以用上,数据也都是同步,比起虚拟机来说,不管你在哪它都可以用,数据在云上也不会丢失,如果是虚拟机,在局域网内用着还可,但是多端使用的话就比较鸡肋,虽然可以通过内网穿透的方式,但是始终不丝滑,比如您在公司项目不忙的时候自己做的项目时,回家后家里电脑就无法访问到数据,就又需要但一套环境数据还不能同步。

有云服务就没有这问题了,所以在这个背景下,建议购买一天云服务,润一下。云厂商,国内生态最好是阿里云,市面上系统镜像版更新快又全,支付的服务和中间件也很多,但是价格相对较高,介于自己用荷包有限,预算有限的前提下,可以选择价格便宜的其他云厂商,看那个符合需求又经济实惠,但是对应的系统镜像可能就没有那么丰富,这个不要紧,只要它可以支持私有镜像的使用就问题不大,需要啥镜像,自己上传就行,因为我们主要是要利用公网ip,在哪都可以用。

小编正在偶然一次活动下采购了2台天翼云服务器,1台阿里,1台火山云,后两者生态都比较完善没事好讲的,本贴主要针对天翼云服务器的使用私有镜像,踩过的坑,基本是配置问题,但有时候配置最难搞 ,帮助使用使用天翼云的小伙伴少走些弯路。

使用工具

  1. 天翼云服务器
  2. RockyLinux9.x版本
  3. 天翼云对象存储
  4. ssh远程连接客户端 MobaXterm WindTerm
  5. docker-ce
  6. docker容器 mysql redis
  7. Navicat TinyRDM

名词解释

  • RockyLinux: 是一个开源、社区拥有和管理、免费的企业Linux发行版,提供强大的生产级平台。可作为CentOS停止维护(改为滚动更新的Stream版)后,RHEL的下游Linux操作系统替代方案,并继承了原CentOS的开源免费特点。

  • MobaXterm:一款强大好用的远程终端登录利器,之前操作远端服务器一直使用的是XShell和Xftp,后来偶得一神器MobaXterm,能同时支持这二者的功能,我果断地放弃了它们而选择了MobaXterm

  • WindTerm:新一代开源免费的终端工具WindTerm 不仅开源免费,还跨平台,支持 Windows、Linux 和 MacOS特色功能:界面清爽,同时支持SSH,SFTP,命令智能提示, 同时支持三种主题的切换,亮白模式、暗黑模式、黑白相间模式。

  • Navicat:是一套可创建多个连接的数据库管理工具,用以方便管理 MySQL、Redis、Oracle、PostgreSQL、SQLite、SQL Server、MariaDB 和 MongoDB 等不同类型的数据库

  • TinyRDM:是一款轻量级、跨平台的Redis桌面管理工具,支持macOS、Windows和Linux操作系统。它的安装包大小约为10MB,具有广泛的兼容性和便携性,适合各种开发和运维场景‌

为什么要在云服务上安装私有镜像 ?

官方解释:提高安全性、节省资源、确保环境一致性、快速部署和易于管理等。在开发和部署过程中,某些应用程序包含敏感信息或专有代码,这些不能公开共享。通过使用私有镜像仓库,可以确保只有授权人员能够访问和使用这些镜像,从而保护数据和代码的安全性。

个人:
1.可以自己封装一个带基本环境的系统镜像,保持环境一致性,放入镜像私有仓库,后续直接使用镜像,只需改少部分配置就行,提升效率
2.云厂商公共镜像版本更新不及时,可以自己上传,使用自己需要的系统镜像,用余个人提升linux 系统的使用(找便宜的云厂商,花小钱体验云主机的丝滑。。。。)

天翼云安装RockyLinux 9.5

提示:该贴发布前天翼云官方公共镜像库还未发布RockyLinux相关镜像,后续可能会更新,主打一个早用早享受,使用其他镜像可以类推

访问天翼云官网:https://www.ctyun.cn/
1.未登录账户前可以查看对应的优惠活动,查看是否有心动价格(登入后如果是老用户就可能无法获取活动最低价的相关活)
2.查看活后,价格合适可以购买(可以多对比几家例如:阿里云,腾讯云,火山云,华为云,七牛云等)如果是新用户专享优惠,可以使用家人的手机注册新账号获得活动价(主打一个薅羊毛)
在这里插入图片描述
3.怎么购买服务这里就不介绍了,反正购买前先了解一下对应的云厂商是否支持使用私用镜像很重要!!!不然只能使用云厂商自己的公共镜像。

4.购买完成后,可以进入控制台,控制中心,进入后切换到自己购买的云主机的资源池,如下图所示
天翼云主机需要先备案,备案后才能使用公网ip对应80端口
在这里插入图片描述
展开后选择对应购买的资源池
在这里插入图片描述
切换到对应的资源池就可以看到购买的云主机和相关服务了
在这里插入图片描述
对应购买的云主机列表
在这里插入图片描述
购买时选择的系统镜像,在列表里可以先关机后,进行更换系统镜像,一键重装
在这里插入图片描述
在这里插入图片描述
选择对应的镜像类型,如果共公镜像没有您要的系统,则可以选择私有镜像,我这边就使用私有镜像RockyLinux9.5

在这里插入图片描述
使用私有镜像前,目前天翼云支持2方式,

  1. 是提交工单,签署对应天翼元的相关文件后,将镜像上传给天翼云,由他们上传
  2. 下载对应的镜像文件,开桶天翼云的对象存储服务(这里目前有个特别坑的是天翼云对象存储开通是,天翼云账户余额必须大于100元才能开通,虽然是按量收费,后面账户余额是可以提现的,但讲实话这给人的感觉特别不好,像阿里云就没有这个余额要求)

我这样就使用2的方式操作,下载对应的镜像,开通对象存储,创建bucket桶,上传
操作如下,进入控制台的
1 .选择镜像服务
2.切换对应的资源池(选择自己需要的资源池,资源池地址不同,支持镜像文件格式会存在不同的差异,如上海和贵州支持的格式是不太一样的,上海支持的镜像格式会更多)
3.获取到对应的镜像格式后,去下载制作对应的镜像文件,我这以RockyLinux 为例

在这里插入图片描述
3.1 去RockyLinux 官网: https://dl.rockylinux.org/vault/rocky/ 找到对应的版本
在这里插入图片描述
3.2 根据不同资源池要求的,镜像文件格式,找到适合的镜像
在这里插入图片描述
找到支持镜像文件格式,下载对应的镜像
在这里插入图片描述
下载完毕后,打开天翼云对象存储服务,创建bucket 桶,创建完成后上传对应的镜像文件

在这里插入图片描述
设置bucket 名称,项目名称,读写权限设为公共读,注意权限一定要设置成公共读,否则创建私有镜像会失败
存储类型:选择标准存储 ,在这里插入图片描述
上传对应的镜像文件
在这里插入图片描述
等待上传完毕后,获取url地址,并复制(创建私有镜像要用这个地址)
在这里插入图片描述
控制中心找到对应的镜像服务,创建私有镜像
在这里插入图片描述
选择镜像文件,填写对应上传到对象存储里的URL地址,填写对应信息,提交等待构建完成即可,如果构建失败,查看bucket 读写权限是否公共读,不是,修改为公共读,镜像文件也设置公共读
在这里插入图片描述
回到云主机,关机后,一键重装,选择私有镜像
在这里插入图片描述
在这里插入图片描述
等待重装完成,远程登入,测试

在这里插入图片描述
输入root 账户 和登入密码(密码是重装主机镜像设置的密码)
在这里插入图片描述
登入成功,则说明系统镜像没有问题
在这里插入图片描述
然后测试ssh 远程连接客户端是否可以成功连接上,我这边使用MobaXterm 和 WindTerm 进行测试,二者选其一几个,或者其他ssh 远程连接客户端也可以看个人喜好

注意:天翼云主机必须先备案后,才能使用80和22端口
1.打开MobaXterm ,点击会话,选择ssh ,连接主机输入:云主机公网ip, 勾选指定用户登入,填root,点ok,会进入输入密码界面,则恭喜您可以使用哦了,没有问题 ,那么接则可以跳过一下ssh连接不上的问题
在这里插入图片描述

ssh客户端连接失败

1.如果连接无响应则,或者出现以下问题,恭喜你中,您是那个幸运儿,需要进一步修改配置

在这里插入图片描述

1. 进去云主机,用天翼云自带的远程连接工具onVPN(因为这个用的是内外连接)

在这里插入图片描述
在这里插入图片描述
2. 查看配置文件是否开启root账户远程登入,查看编辑ssh配置文件, 这个参数PermitRootLogin , 参数只改为yes,并保存

vi /etc/ssh/sshd_config

在这里插入图片描述
重启ssh 服务

systemctl restart sshd

然后尝试ssh客户端 远程连接是否可以访问,如果失败修改镜像地址为阿里云

进入etc yum.repos.d 目录下查看rocky的配置文件名,
在这里插入图片描述
根据对应的文件名前缀进行修改镜像源,且备份配置文件,我的前缀为rocky 则对应 /etc/yum/repos.d/rocky*.repo

sed -e 's|^mirrorlist=|#mirrorlist=|g' \
    -e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g' \
    -i.bak \
    /etc/yum.repos.d/rocky*.repo

在这里插入图片描述
查看配置文件 cat /etc/yum.repos.d/rocky.repo ,如下图所示则修改成功
在这里插入图片描述
然后清除缓存 yum clean all
生成新缓存 yum makecache

在这里插入图片描述
备份ssh 目录

mv /etc/ssh  /etc/ssh  

卸载重装ssh服务

#卸载ssh
yum remove openssh-server
yum remove openssh-clients
#清楚缓存
yum cleran all 
#生产新的缓存
yum makecache
# 重新安装ssh
yum install -y openssh-server openssh-clients
# 初始化ssh key 
ssh-keygen -A 
#设置开机自启
systemctl enable  sshd
#重启ssh
systemctl restart sshd

在这里插入图片描述
在这里插入图片描述
重装ssh ,修改 sshd_config 配置文件
vi /etc/ssh/sshd_config ,修改后重启系统,测试
在这里插入图片描述
ssh 客户端连接测试成功
在这里插入图片描述
使用WindTerm ssh客户端连接远程服务器
在这里插入图片描述
通过以上步骤解决ssh 客户端无法连接问题

使用ssh 客户端,给服务器安装docker-ce

yum -y install dnf 

dnf -y install wget

********************Docker-ce社区版本————————
#运行以下命令,下载docker-ce的yum源。
sudo wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo



#运行以下命令,安装Docker。
sudo dnf -y install docker-ce

#执行以下命令,检查Docker是否安装成功。
sudo docker -v
 
#执行以下命令,启动Docker服务,并设置开机自启动。
sudo systemctl start docker
sudo systemctl enable docker

#执行以下命令,查看Docker是否启动。
sudo systemctl status docker

#配置Docker镜像加速
([ -f /etc/docker/daemon.json ] || mkdir -p /etc/docker) && echo '{ "registry-mirrors" : [ "https://docker.m.daocloud.io", "https://noohub.ru", "https://huecker.io", "https://dockerhub.timeweb.cloud" ] }' > /etc/docker/daemon.json && sudo systemctl restart docker && sleep 1 && docker info | grep -A 4 "Registry Mirrors"

systemctl daemon-reload


*****************************安装Mysql**********************************
#宿主机创建mysql 配置挂目录
mkdir -p /home/data/mysql
#创建配置文件
touch /home/data/mysql/my.cnf

#部署
docker run \
    -p 3306:3306 \
    -e MYSQL_ROOT_PASSWORD=123456 \
    -v /home/data/mysql/conf:/etc/mysql/conf.d \
    -v /home/data/mysql/data:/var/lib/mysql:rw \
    -v /home/data/mysql/my.cnf:/etc/mysql/my.cnf \
    --name yy_mysql \
    --restart=always \
    -d mysql:8.0

部署完毕有Navicat 连接测试
在这里插入图片描述
安装resdis

docker run -itd --name xdclass-redis -p 6379:6379 -v /mydata/redis/data:/data redis:7.0.8 --requirepass  www123456

TinyRDM 连接redis 测试成功
在这里插入图片描述

Linux 8系统上安装Docker CE并导入Rocky Linux 9的tar镜像是这样的步骤: 1. **检查系统兼容性**: 确保你的Linux 8系统支持Docker,你可以通过运行`uname -a`命令查看内核版本,如果已经到4.9.0或更高则可以。 2. **添加Docker仓库**: 首先需要添加Docker的官方社区仓库,对于RHEL/CentOS系的系统,可以在终端中运行以下命令: ``` sudo curl -fsSL https://download.docker.com/linux/centos/8/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg sudo echo \ "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/centos/8 stable" | sudo tee /etc/yum.repos.d/docker-ce.repo > /dev/null ``` 3. **安装Docker**: 更新软件包列表并安装Docker: ``` sudo yum makecache fast sudo yum install docker-ce docker-ce-cli containerd.io ``` 完成安装后,需要启动并设置服务自动启动: ``` sudo systemctl start docker sudo systemctl enable docker ``` 4. **导入Rocky Linux 9镜像**: 你需要将`.tar`文件转换为`.dockerignore`文件,并上传Docker registry或者直接从本地目录上传。然后在Dockerfile中指定镜像来源,例如如果你有一个名为`myapp.tar`的镜像,你可以创建一个新的Dockerfile,内容类似: ```Dockerfile FROM rockylinux:9 COPY myapp.tar /app/ # 进行必要的解压和安装等操作... ``` 之后在当前目录下构建镜像: ``` docker build -t my_rocky_image . ``` 最后,你可以运行这个新镜像: ``` docker run -it my_rocky_image ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值