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

Centos7安装docker、java、python环境

文章目录

  • 前言
  • 一、docker的安装
  • 二、docker-compose的安装
  • 三、安装python3和配置pip3
    • 配置python软链接(关键)
  • 四、Centos 7.6操作系统安装JAVA环境


前言

每次vps安装docker都要看网上的文章,而且都非常坑,方法千奇百怪,最后还是决定自己来记录一个完整又方便的过程,方便自己以后定期查看。


提示:以下是本篇文章正文内容,下面案例可供参考

一、docker的安装

更新yum

sudo yum update

安装依赖包

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

设置仓库

sudo yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo

更新索引

sudo yum makecache fast

安装docker

sudo yum install docker-ce

启动docker

sudo systemctl start docker

执行"docker version"命令

在这里插入图片描述

照着命令敲,一路下来0报错,非常顺利。

二、docker-compose的安装

官网选择版本

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

解压之后,下载到/usr/local/bin路径下

在这里插入图片描述

添加执行权限

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

检查docker-comopse版本

docker-compose version

在这里插入图片描述

也是很顺利,而且很方便。

三、安装python3和配置pip3

到官网这里下载,任意挑选一个版本。

https://www.python.org/ftp/python/

我选的是3.12.0版本,比较新。

在这里插入图片描述

然后下载这个tgz结尾的包。记得是tgz结尾的。tgz。tgz。

然后把tgz包上传到vps上面,怎么上传我就不说了,反正现在的ssh工具都自带SFTP功能。

然后解压:

tar zxvf Python-3.12.0.tgz

在这里插入图片描述

位置随便,我解压的位置是/root/tools

安装编译的工具,一条命令解决:

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

cd命令进入解压后的Python源码包目录:

在这里插入图片描述

执行configure文件:

./configure --prefix=安装路径

安装路径自己设置,我设置的是:/home/python3

./configure --prefix=/home/python3

等待一下子之后,开始编译,命令就是make:

make

安装:

make install

安装完成即可。

配置python软链接(关键)

进入到上面设置的python3的安装目录(/home/python3)下的bin目录。

在这里插入图片描述

建立python3软链接:

ln -s /home/python3/bin/python3.12 /usr/local/bin/python3

建立pip3软链接:

ln -s /home/python3/bin/pip3.12 /usr/local/bin/pip3

建立完毕后,可以查看已建立的软链接

ll /usr/local/bin/

在这里插入图片描述

使用vim编辑器打开配置文件

vi ~/.bash_profile

末尾增加以下两行:

export PYTHON_HOME=/home/python3
export PATH=$PYTHON_HOME/bin:$PATH

在这里插入图片描述

保存退出之后,让它生效:

source ~/.bash_profile

这样就完成了。

python3 --version
python2 --version

在这里插入图片描述

pip3 -v

在这里插入图片描述

四、Centos 7.6操作系统安装JAVA环境

在腾讯云上面买个VPS服务器,装了个Centos系统,结果发现里面空空如也,十分干净,没有java环境在平时的渗透测试中很难发挥反弹shell的作用。所以就来记录一下怎么安装java环境,jdk1.8.0。
登录腾讯云服务器,远程连接一下:
当然,用xshell连接也可以。

在这里插入图片描述

yum命令查找一下,看下本机是否有自带的java环境,如果有要全部remove清楚干净,像我下面图片这样的,就是干净得一匹,什么也没有。
在这里插入图片描述

查看yum库中的java安装包

yum -y list java*

在这里插入图片描述

安装Java JDK

yum -y install java-1.8.0-openjdk*

在这里插入图片描述

出现complete!
安装成功

在这里插入图片描述

查找Java安装路径

which java

在这里插入图片描述

输入ls -lrt /usr/bin/java(也就是上一步查询出来的路径),然后回车

ls -lrt /usr/bin/java

在这里插入图片描述

输入ls -lrt /etc/alternatives/java(也就是上一步查询出来的路径),然后回车

ls -lrt /etc/alternatives/java

在这里插入图片描述

从路径中可以看到在jvm目录下,输入cd /usr/lib/jvm,跳转到jvm的目录

在这里插入图片描述

输入ls 列出当前目录下的文件和文件夹

在这里插入图片描述

配置Java环境变量
输入vi /etc/profile去编辑环境变量

vi /etc/profile

在这里插入图片描述

滚动到最底部,按键盘上的i键切换到编辑模式
输入

export JAVA_HOME=/usr/lib/jvm/java-1.8.0
export JRE_HOME=$JAVA_HOME/jre  
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

在这里插入图片描述

按键盘上的Esc键退出编辑模式
输入:wq进行保存并退出

输入source /etc/profile,使配置立即生效

source /etc/profile

在这里插入图片描述

检查Java安装和配置情况
输入java -version,然后回车

在这里插入图片描述

这样就成功安装了,比网上的办法要简单快捷得多,不用自己去java官网下载那么麻烦,直接终端yum命令下载安装。


    文章原创,欢迎转载,请注明文章出处: Centos7安装docker、java、python环境.。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。

相关文章:

Centos7安装docker、java、python环境

文章目录 前言一、docker的安装二、docker-compose的安装三、安装python3和配置pip3配置python软链接(关键) 四、Centos 7.6操作系统安装JAVA环境 前言 每次vps安装docker都要看网上的文章,而且都非常坑,方法千奇百怪&#xff0c…...

简单小结类与对象

/*** Description 简单小结类与对象*/ package com.oop;import com.oop.demo03.Pet;public class Application {public static void main(String[] args) {/*1.类与对象类是一个模版:抽象,对象是一个具体的实例2.方法定义、调用!3.对象的引用…...

ABAP 如何获取内表行的索引值(index) ?

获取索引值 在ABAP中,如果需要获取一个内表中某条记录的索引(index),可以使用 READ TABLE 语句。在 READ TABLE 语句后面的 WITH KEY 子句可以指定搜索条件,如果找到了匹配的记录,系统字段 SY-TABIX 将保存…...

ESP32-Web-Server编程- 使用表格(Table)实时显示设备信息

ESP32-Web-Server编程- 使用表格(Table)实时显示设备信息 概述 上节讲述了通过 Server-Sent Events(以下简称 SSE) 实现在网页实时更新 ESP32 Web 服务器的传感器数据。 本节书接上会,继续使用 SSE 机制在网页实时显…...

vue3 Hooks函数使用及常用utils封装

hooks 是什么 vue3使用了composition API,我们可自定义封装hooks,达到复用,在Vue2中采取的mixins,对mixins而言, hooks更清楚复用功能代码的来源, 更清晰易懂。 简单来说:hooks 就是函数的一种写法&#xf…...

matlab 无迹卡尔曼滤波

1、内容简介 略 26-可以交流、咨询、答疑 2、内容说明 无迹卡尔曼滤波 无迹卡尔曼滤波 无迹卡尔曼滤波 3、仿真分析 %该文件用于编写无迹卡尔曼滤波算法及其测试 %注解:主要子程序包括:轨迹发生器、系统方程 % 测量方程、UKF滤波器 %----…...

大脑--学习方法

1.大脑喜欢色彩。平时使用高质量的有色笔或使用有色纸,颜色能帮助记忆。 2.大脑集中精力最多只有25分钟。这是对成人而言,所以学习20到30分钟后就应该休息10分钟。你可以利用这段时间做点家务,10分钟后再回来继续学习,效果会更好…...

4.C转python

1.建立函数: def 函数名(形参): 函数体(记得写缩进) return 返回值(python中可以没有return) 2.调用函数: 函数名(实参) 实参和形参个数相等即可,类型不需要相同 其中接收返回值与C中的差不多 3.如果只是定义而不调用则函数不会执行 4.先定义函数,后调用 5.python中可以…...

YOLOv5项目实战(5)— 算法模型优化和服务器部署

前言:Hello大家好,我是小哥谈。近期,作者所负责项目中的算法模型检测存在很多误报情况,为了减少这种误报情况,作者一直在不断优化算法模型。鉴于此,本节课就给大家详细介绍一下实际工作场景中如何去优化算法模型和进行部署,另外为了方便大家进行模型训练,作者在文章中提…...

JavaScript类型判断:解密变量真实身份的神奇技巧

文章目录 1. typeof运算符2. instanceof运算符3. Object.prototype.toString4. Array.isArray5. 使用constructor属性6. 使用Symbol.toStringTag7. 使用is类型判断库8. 谨慎使用隐式类型转换结语 🎉JavaScript类型判断:解密变量真实身份的神奇技巧 ☆* o…...

MT6893_天玑 1200芯片规格参数介绍_datasheet规格书

天玑 1200(MT6893)是一款专为旗舰级全新5G芯片,它融合了先进的AI、相机和多媒体技术,为用户带来令人惊叹的体验。采用先进的6纳米制程设计,内置各种先进技术。该芯片采用旗舰级的八核CPU架构设计,支持16GB强大的四通道内存以及双通…...

【Android踩过的坑】13.Android Studio 运行成功,但APP没有安装上的问题

【Android踩过的坑】13.Android Studio 运行成功,但APP没有安装上的问题 解决办法: 在app的build.gradle文件下添加以下代码 android {...//android.useNewApkCreatorfalse 在高版本gradle下无效,添加以下代码解决冲突即可packagingOptions…...

redis安装配置

Windows 下 Redis 安装与配置 教程_redis windows-CSDN博客 启动Redis服务 打开cmd窗口,切换到Redis安装路径,输入 redis-server 启动 redis 服务...

企业数字化转型应对传统网络挑战的关键策略

数字化变革正在以前所未有的速度和规模改变着我们的生活和工作方式,使得传统网络架构面临着巨大的挑战。其中包括带宽需求增加、多云应用增加、安全威胁增加以及传统网络设备无法满足需求等问题。 数字化时代需要更高速、更可靠、更安全的网络支持,传统网…...

Java 多线程基础 线程4种创建方式

目录 什么是进程什么是多线程使用多线程的好处使用多线程的应用场景单线程与多线程之间的区别如何理解线程上下文切换使用多线程真的开启越多越好吗线程4种创建的方式1.继承Thread类2.使用Runnable3.使用Callable4.线程池的方式 多线程五种的状态如何优雅的停止一个线程 什么是…...

C++概念相关练习题

目录 一、内存管理 二、运算符重载 三、this指针 四、构造&析构函数 一、内存管理 下面有关c内存分配堆栈说法错误的是( ) A.对于栈来讲,是由编译器自动管理,无需我们手工控制;对于堆来说,释放工作由程序员控制 B. 对…...

区间合并笔记

文章目录 什么是区间合并怎么做区间合并AcWing 803. 区间合并思路解析my - CODEdalao の CODE 什么是区间合并 区间合并是指给定多个区间,让你将重合的区间合并为一个区间 怎么做区间合并 区间合并类问题大多三个办法: 按左端点排序按右端点排序按左右…...

青少年CTF之PHP特性练习(1-5)

青少年CTF-PHP特性练习 文章目录 青少年CTF-PHP特性练习PHP特性01PHP特性02PHP特性03PHP特性04PHP特性05 PHP特性01 看给出的源码&#xff0c;两个变量的值加密后的MD5相同 <?php$s1 "%af%13%76%70%82%a0%a6%58%cb%3e%23%38%c4%c6%db%8b%60%2c%bb%90%68%a0%2d%e9%47…...

《opencv实用探索·七》一文看懂图像卷积运算

1、图像卷积使用场景 图像卷积是图像处理中的一种常用的算法&#xff0c;它是一种基本的滤波技术&#xff0c;通过卷积核&#xff08;也称为滤波器&#xff09;对图像进行操作&#xff0c;使用场景如下&#xff1a; 模糊&#xff08;Blur&#xff09;&#xff1a; 使用加权平…...

RPA机器人如何确保敏感数据的安全性

数据资源作为数字化时代的关键要素&#xff0c;其重要性一直受到高度重视&#xff0c;由此&#xff0c;数据安全也成为企业和个人必须面对的重要问题。随着RPA技术在各个行业的广泛应用&#xff0c;其系统安全性也成了每个企业关注的重中之重。经验丰富的RPA专家可以有效地采取…...

在 Elasticsearch 中,存储向量查询速度最高提升 3 倍

作者&#xff1a;来自 Elastic Benjamin Trent Elasticsearch 9.4 提供了一种更简单的方式来搜索存储在 Elasticsearch 索引中的向量&#xff0c;并将延迟最高降低 3 倍。 从向量搜索到强大的 REST API&#xff0c;Elasticsearch 为开发者提供了最全面的搜索工具集。深入体验 E…...

天勤策略钉钉告警:交易信号与异常通知怎么分流

前言 策略上云之后&#xff0c;我和同事最怕两件事&#xff1a;一是真出事了没人知道&#xff0c;二是没事也被钉钉刷屏刷到麻木。最早接推送时图省事&#xff0c;在 wait_update 里每次 last_price 变就发一条&#xff0c;一个活跃品种白天能几百条&#xff0c;两天之后群里全…...

python 内存管理 内存泄漏及排查方案 内存友好的python代码

Python 内存管理 一、一句话总结 Python 的内存管理就是三件事&#xff1a; 自动分配内存&#xff08;你不用管变量存在哪&#xff09;自动回收垃圾&#xff08;不用的对象自动删掉&#xff09;靠引用计数 分代垃圾回收实现二、核心机制 1&#xff1a;引用计数&#xff08;最基…...

Go语言DDD实战:领域驱动设计

Go语言DDD实战&#xff1a;领域驱动设计 1. DDD分层 type UserService struct {repo UserRepository }func (s *UserService) CreateUser(cmd *CreateUserCommand) error {// 领域逻辑 }2. 总结 DDD通过统一语言和限界上下文实现复杂业务系统的有效建模。...

专栏导读:为什么需要从 MM 理解 HMM

一个真实的困境 假设你是一个 GPU 计算框架的开发者。用户写了这样一段代码&#xff1a; float *data malloc(1GB); // ... 填充数据 ... gpu_kernel<<<grid, block>>>(data); // 希望 GPU 直接访问 data在传统编程模型下&#xff0c;这不可能工作——GPU …...

从零手写K-Means聚类算法:理解初始化、分配与收敛的底层原理

1. 项目概述&#xff1a;从零手写K-Means&#xff0c;不只是调包&#xff0c;而是真正理解聚类的“心跳”你有没有过这种感觉&#xff1a;调用sklearn.cluster.KMeans跑完一个聚类任务&#xff0c;结果图一出、轮廓系数一算&#xff0c;好像就结束了&#xff1f;但当同事问起“…...

【Linux驱动开发】第10天:设备树零基础入门——DTS/DTB/DTC全解+编译流程

目录 为什么需要设备树&#xff1f;传统驱动的终极痛点DTS/DTB/DTC 大白话定义核心区别三者关系完整编译流程图最简单的DTS示例语法解析设备树编译与反编译实操命令内核如何加载和使用设备树核心总结面试必背考点 1. 为什么需要设备树&#xff1f;传统驱动的终极痛点 在设备树…...

关于国内SDR(成都振芯)的介绍说明

概述 软件无线电&#xff08;SDR&#xff09;是一种无线电通信技术&#xff0c;其关键功能&#xff08;如调制解调、滤波、变频等&#xff09;通过软件在可编程硬件&#xff08;如FPGA、DSP&#xff09;上实现&#xff0c;而非依赖固定的硬件电路。这使得无线电设备具有高度的灵…...

Lovable框架实战速成:3天掌握UI动效、状态管理与热重载调试全流程

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Lovable框架核心理念与开发环境搭建 Lovable 是一个以开发者体验&#xff08;DX&#xff09;为第一优先级的现代 Go Web 框架&#xff0c;其核心理念可凝练为三个关键词&#xff1a;可读性&#xff08;…...

Agent Runtime 重构:Session 作为事件日志的工程实践

1. 这不是新赛道&#xff0c;而是 runtime 层的“操作系统时刻”正在重演你有没有试过让一个 AI 代理连续工作四十分钟&#xff1f;不是闲聊&#xff0c;而是真干活&#xff1a;查数据库、调 API、读文档、写代码、改配置、再验证——一环扣一环。去年我带团队跑一个客户的数据…...