Ubuntu——配置安装服务

目录

一、安装JDK

二、安装IntelliJ IDEA

三、安装Docker-ce

1.环境清理以免有遗留组件

2.安装Docker

3.测试


#检查版本
sudo cat /etc/issue

一、安装JDK

Ubuntu提供了一个名为apt的软件包管理工具,通过它可以使用命令行的方式安装、更新和删除软件包。

使用apt可以方便地管理软件包,以下是一些常用的apt命令:

  • 安装软件包:使用sudo apt install <package-name>命令来安装指定的软件包。例如,要安装Firefox浏览器,可以运行sudo apt install firefox。
  • 更新软件包列表:在安装新软件包之前,最好先更新软件包列表以获取最新的可用软件包信息。使用sudo apt update命令来更新软件包列表。
  • 更新已安装的软件包:使用sudo apt upgrade命令来更新已安装的软件包到最新版本。
  • 搜索软件包:使用apt search <keyword>命令来搜索与关键字匹配的软件包。例如,要搜索与Python相关的软件包,可以运行apt search python。
  • 删除软件包:使用sudo apt remove <package-name>命令来删除指定的软件包。注意,这只会删除软件包本身,不会删除其配置文件。如果要同时删除配置文件,请使用sudo apt purge <package-name>命令。
  • 查看本地已安装的软件包列表:使用apt list --installed命令,如果你只想查看与Python相关的已安装软件包,可以使用apt list --installed | grep python。
sudo apt update
#更新软件包列表apt search openjdk
#搜索openjdk相关的软件包

sudo apt install openjdk-8-jdk
#安装 openjdk8

#验证是否安装成功
javac -version
java -version

dpkg -L openjdk-8-jdk
#查找jdk安装路径

#安装vim编辑器
sudo apt-get install vim#配置环境变量
sudo vim ~/.bashrc#按G将光标移动到底部,然后按o另起一行,复制以下内容:(在命令模式下执行)
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin:$PATH#让环境变量配置立即生效
source ~/.bashrc

二、安装IntelliJ IDEA

IDEA下载地址:https://www.jetbrains.com/idea/download/?section=linux

#打开终端,使用wget命令下载idea社区版安装包:(大概900M左右)
sudo mkdir /test
cd /test
sudo wget https://download.jetbrains.com.cn/idea/ideaIC-2023.2.tar.gz

#将安装包解压缩
sudo tar -zxvf ideaIC-2023.2.tar.gz#使用mv命令,将文件移动到/opt目录下
sudo mv idea-IC-232.8660.185 /opt
#切换到idea的bin目录下,启动IDEA
./idea.sh

 

三、安装Docker-ce

docker安装文档:https://docs.docker.com/desktop/install/ubuntu/

#关闭防火墙:(ufw是基于iptable封装的一个防火墙工具)
# 关闭防火墙
sudo ufw disable
# 查看防火墙状态
sudo ufw status
# 启动防火墙
sudo ufw enable

1.环境清理以免有遗留组件

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; \
do sudo apt-get remove $pkg;\
done

sudo apt-get remove docker docker-engine docker.io containerd runc
#卸载旧版的docker

2.安装Docker

  • apt-transport-https:用于通过 HTTPS 协议进行安装源的传输。
  • ca-certificates:用于验证 HTTPS 传输的证书。
  • curl:用于通过网络进行数据传输的工具。
  • gnupg-agent:用于管理加密密钥的工具。
  • software-properties-common:用于管理软件包源的常用工具。
sudo apt-get install \apt-transport-https \ca-certificates \curl \gnupg-agent \software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
#添加Docker官方GPG密钥#添加dokcer软件源
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

#安装docker
sudo apt install -y docker.io#验证dokcer是否安装成功
docker --version

 

#配置阿里云镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://bbc8rnyr.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

sudo docker info
#查看docker镜像源

sudo systemctl enable docker
#设置docker开机自启

3.测试

# 下载镜像
sudo docker pull nginx:1.18# 查看镜像
sudo docker images# 启动镜像
sudo docker run --name=nginx -p 80:80 --restart=always -d nginx:1.18# 查看正在运行的容器 
sudo docker ps

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

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

相关文章

Day03 左侧菜单数据绑定

一.左侧菜单数据绑定 1.首先&#xff0c;进行项目结构塔建。按照Prism 框架约定&#xff0c;要使用自动查找绑定功能。即View &#xff08;视图&#xff09;中自动查找并绑定到对应的ViewModel&#xff08;视图模型&#xff0c;处理视图业务逻辑&#xff09;。就需要在项目中按…

大数据在金融行业的深度应用与未来展望

一、引言 随着信息技术的迅猛发展,大数据已经成为推动金融行业创新的重要力量。从精准营销、个性化服务到风险管理和产品创新,大数据的应用正在不断重塑金融行业的格局。本文将深入探讨大数据在金融行业的深度应用,分析其特征特点、解决方案以及面临的挑战与机遇,并展望其…

【C++】6-7 你好,输出的格式控制(三角形)

6-7 你好&#xff0c;输出的格式控制&#xff08;三角形&#xff09; 分数 10 全屏浏览 切换布局 作者 向训文 单位 惠州学院 完善程序&#xff1a;输入行数rows&#xff08;大于0&#xff09;&#xff0c;第一行输出rows个*&#xff0c;接下来每行的*个数减1&#xff0c;直…

LeetCode刷题之HOT100之搜索旋转排序数组

2024/6/2 雨一直下&#xff0c;一个上午都在床上趴着看完了《百年孤独》&#xff0c;撑伞去吃了个饭&#xff0c;又回到了宿舍。打开许久未开的老电脑&#xff0c;准备做题了。《百年孤独》讲了什么&#xff0c;想表达什么&#xff0c;想给读者留下什么&#xff0c;我不知道&am…

列表的可变性

列表的可变性 Python里的内置数据类型&#xff0c; 大致上可分为可变与不可变两种。 可变&#xff08;mutable&#xff09;&#xff1a;列表、字典、集合不可变&#xff08;immutable&#xff09;&#xff1a;整数、浮点数、字符串、字节串、元组 列表是可变的&#xff0c;当…

无法拒绝!GPT-4o 完美适配安卓手机,畅享丝滑体验

无法拒绝&#xff01;GPT-4o 完美适配安卓手机&#xff0c;畅享丝滑体验 前言 人工智能的飞速发展&#xff0c;给我们的生活带来了前所未有的便利。作为AI技术的代表之一&#xff0c;GPT凭借其强大的自然语言处理能力&#xff0c;已经成为许多用户日常生活和工作中的得力助手…

超大功率光伏并网逆变器学习(三相) 一

1.超大功率用的IGBT开关频率通常很低,比如6KHz 2.线电压和相电压的关系 相电压 A AB线电压-CA线电压 相电压 B BC线电压-AB线电压 相电压 C CA线电压-BC线电压 3.坐标变换 ABC三相信号通过Clark坐标变换得到αβ两相静止信号,其中α与A相重合,β与α…

基于数据驱动的自适应性小波构造(MATLAB)

以地震领域为例&#xff0c;时频变换能够刻画地震资料的时频特征&#xff0c;进而辅助地质构造解释。在各种时频分析工具中&#xff0c;连续小波变换CWT是描述地震资料时频特征的常用工具。选择合适的基小波是CWT的关键问题。对于不同类型的信号前人有针对性的设计了许多基小波…

TCP/IP(网络编程)

一、网络每一层的作用 &#xff0a;网络接口层和物理层的作用&#xff1a;屏蔽硬件的差异&#xff0c;通过底层的驱动&#xff0c;会提供统一的接口&#xff0c;供网络层使用 &#xff0a;网络层的作用&#xff1a;实现端到端的传输 &#xff0a;传输层:数据应该交给哪一个任…

ajax框架在Web前端的应用与挑战

ajax框架在Web前端的应用与挑战 在Web开发的广阔领域中&#xff0c;ajax框架以其独特的魅力&#xff0c;吸引了众多前端开发者的目光。然而&#xff0c;它并非完美无缺&#xff0c;也存在一些应用上的挑战。本文将深入探讨ajax框架在Web前端的应用及其所面临的挑战&#xff0c…

排序算法教程(个人总结版)

1. 引言 1.1 什么是排序算法 排序算法是一类算法&#xff0c;用于将一组数据按特定顺序排列。常见的排序顺序有升序和降序。 1.2 排序算法的应用领域 排序算法在许多领域有广泛应用&#xff0c;如数据分析、数据库管理、信息检索、计算机图形学等。排序操作是计算机科学中基…

移植2D物理引擎到LVGL

背景 在LVGL交流群&#xff0c;有网友提出想要移植物理引擎到LVGL&#xff0c;遂有了本文。阅读本文需要对IDF和LVGL有所了解 过程 2D物理引擎有很多&#xff0c;经过一番调研选择了Chipmunk2D 下载源码 此处省略一万字&#xff0c;Github访问可能会有些慢 添加文件 将…

针对软件性能问题,如何定位解决?解决思路总结

针对软件性能问题&#xff0c;我们可以按照以下步骤来定位和解决&#xff1a; 一、性能问题定位 响应时间分析&#xff1a; 响应时间是用户感知软件性能的重要指标之一。通过对系统的响应时间进行分析&#xff0c;可以定位到导致响应时间延长的关键路径。这些关键路径可能是数据…

前端3剑客(第1篇)-初识HTML

100编程书屋_孔夫子旧书网 当今主流的技术中&#xff0c;可以分为前端和后端两个门类。 前端&#xff1a;简单的理解就是和用户打交道 后端&#xff1a;主要用于组织数据 而前端就Web开发方向来说&#xff0c; 分为三门语言&#xff0c; HTML、CSS、JavaScript 语言作用HT…

【Mysql语句优化---Explain使用以及相关属性含义】

Explain使用以及相关属性含义 一.explain中的列 接下来我们将展示 explain 中每个列的信息。 1. id列 id列的编号是 select 的序列号&#xff0c;有几个 select 就有几个id&#xff0c;并且id的顺序是按 select 出现的顺序增长的。 id列越大执行优先级越高&#xff0c;id相…

罗德里格斯旋转公式证明-简洁

罗德里格斯旋转公式证明。 设旋转向量为 ( n , θ ) (n, \theta) (n,θ)&#xff0c;设其对应的旋转矩阵为 R R R&#xff0c; 如何证明&#xff1f; R c o s θ I n ∧ s i n θ ( 1 − c o s θ ) n n T Rcos\theta I n^{\wedge}sin\theta(1-cos\theta)nn^{T} RcosθI…

什么是线性代数(Linear algebra)?

什么是代数 代数的英文是Algebra&#xff0c;这个英文源自一个阿拉伯语“al jebr”&#xff0c;意思是 破碎部分的重新组合。这个意思促进了我代数的概念的理解。在代数中&#xff0c;我们会使用基本的算术&#xff08;加、减、乘、除&#xff09;&#xff0c;便是对于要处理的…

红队内网攻防渗透:内网渗透之windows内网权限提升技术:用户篇

红队内网攻防渗透 1. 内网权限提升技术1.1 内网安全-本地管理用户-权限提升1.2 本地管理用户-权限提升-服务启动(提权)1.3 本地管理用户-权限提升-远程控制(提权)1.4 本地管理用户-权限提升-进程注入(降权&提权)1.4.1 MSF-进程注入:1.4.1 CS-进程注入:1.5 本地管理用…

[leetcode 9回文数]三行解决回文数问题

9. 回文数 思路 将给定的整数x转换成字符串,再对字符串进行反转操作,最后比较两个字符串内容是否相等 java解法 class Solution {public boolean isPalindrome(int x) {String s String.valueOf(x);String reverse new StringBuffer(s).reverse().toString();return s.e…

RDD与Java实战:学生列表,先按性别降序,再按年龄降序排列

文章目录 Scala RDD 实现Java 实现实战总结 在本实战任务中&#xff0c;我们的目标是对学生列表进行排序&#xff0c;排序规则是先按性别降序排列&#xff0c;再按年龄降序排列。我们提供了两种实现方式&#xff1a;使用Scala的RDD&#xff08;弹性分布式数据集&#xff09;和…