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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++ : 模板初阶

标题&#xff1a;C : 模板初阶 水墨不写bug 正文开始&#xff1a; C语言的问题 &#xff1a; 写不完的swap函数 在学习C语言时&#xff0c;我们有一个经常使用的函数swap函数&#xff0c;它可以将两个对象的值交换。 我们通常这样实现它&#xff1a; void swap(int t1,int t…

2024年西安交通大学程序设计竞赛校赛

2024年西安交通大学程序设计竞赛校赛 文章目录 2024年西安交通大学程序设计竞赛校赛D瑟莉姆的宴会E: 雪中楼I: 命令行(待补)J&#xff1a;最后一块石头的重量(待补)K: 崩坏&#xff1a;星穹铁道(待补)M&#xff1a;生命游戏N: 圣诞树 D瑟莉姆的宴会 解题思路&#xff1a; ​ …

基于Android Studio 实现的鲜花(购物)商城App--原创

一、高质量源码&#xff08;非开源&#xff09; 关注公众号&#xff1a;《编程乐学》 后台回复&#xff1a;24060201 二、项目演示视频 基于Android Studio 实现的鲜花商城App--原创 三、开发环境 四、设计与实现 1.启动页 启动页我们需要用到倒计时和跳转功能。 2.注册登录 …

Vue中引入elementUI中的container组件失效

1.不用修改官网中任何css或者html 2.按需引入&#xff0c;不是只是引入官网的就可以 import Vue from vue import Router from vue-router import HelloWorld from /components/HelloWorld import First from /components/views/First import Second from /components/views/…

多元联合分布建模 Copula python实例

多元联合分布建模 Copula python实例 目录 库安装 实例可视化代码 库安装 pip install copulas 实例可视化代码 import numpy as np import pandas as pd from copulas.multivariate import GaussianMultivariate# Generate some example data np.random.seed(42) data = …

反向配置教程

注意&#xff0c;Openai、Gemini、claude和pika接口在国内直连不通&#xff0c;都需要配置反向 一、配置openai反向 1、在海外宝塔添加反向 将海外宝塔升级到最新 在海外宝塔添加一个新站点&#xff08;可以解析一个域名来用&#xff0c;也可以用ip端口形式&#xff09; 打开…

大模型应用:Prompt-Engineering优化原则

1.Prompt-Engineering 随着大模型的出现及应用&#xff0c;出现了一门新兴“技术”&#xff0c;该技术被称为Prompt-Enginerring。Prompt Engineering即提示工程&#xff0c;是指在使用大语言模型时&#xff0c;编写高效、准确的Prompt(提示词)的过程。通过不同的表述、细节和…

安全风险 - 组件导出风险

在安全审查中关于组件导出风险是一种常见问题&#xff0c;不同组件都有可能遇到这种问题&#xff0c;而且从一定角度来看的话&#xff0c;如果涉及到三方业务&#xff0c;基本处于无法解决的场景&#xff0c;所以我们需要说明为何无法避免这种风险 组件导出风险能不能规避&…

设计模式(十)结构型模式---享元模式

文章目录 享元模式简介结构UML图具体实现UML图代码实现 享元模式简介 享元模式&#xff08;fly weight pattern&#xff09;主要是通过共享对象来减少系统中对象的数量&#xff0c;其本质就是缓存共享对象&#xff0c;降低内存消耗。享元模式将需要重复使用的对象分为两个状态…

Nginx配置详细解释:(2)events事件配置

在nginx核心配置文件conf/nginx.conf中&#xff0c;有全局配置&#xff0c;events模块&#xff0c;http模块&#xff0c;(http模块中有嵌套多个模块)。常见配置项&#xff0c; events模块中&#xff0c;如下图&#xff1a; events是nginx与用户之间处理事件的功能。 如单个wo…

selenium自动化介绍

文章目录 一、selenium原理 安装二、selenium使用1.创建浏览器对象&#xff0c;访问网址2.消除警告提示3.不显示浏览器中受控制字样4.防检测5.设置延时5.1强制延时5.2隐式延时 6.设置浏览器窗口大小 三、案例实战&#xff1a;百度搜索四、iframe标签五、案例实战&#xff1a;Q…

SpringBoot+百度地图+Mysql实现中国地图可视化

通过SpringBoot百度地图Mysql实现中国地图可视化 一、申请百度地图的ak值 进入百度开发者平台 编辑以下内容 然后申请成功 二、Springboot写一个接口 确保数据库里有数据 文件目录如下 1、配置application.properties文件 #访问端口号 server.port9090 # 数据库连接信息 spr…

【Vue】响应式特性

响应式&#xff1a;简单理解就是数据改变&#xff0c;视图会自动更新。 如何访问 和 修改 data中的数据&#xff08;响应式演示&#xff09; data中的数据, 最终会被添加到实例上 例如这里&#xff0c;app身上就会拥有msg属性&#xff0c;修改msg的值&#xff0c;界面的值也会…

原生APP开发和Flutter开发的比较

原生APP开发和Flutter开发各有优缺点&#xff0c;适用于不同的场景和需求。下面是两者的详细比较&#xff0c;从开发语言、性能、开发效率、维护和更新、社区和支持等多个方面进行分析。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。…

成功解决“IndexError: queue index out of range”错误的全面指南

成功解决“IndexError: queue index out of range”错误的全面指南 引言 在Python编程中&#xff0c;queue模块提供了同步队列类&#xff0c;包括FIFO&#xff08;先进先出&#xff09;队列Queue&#xff0c;LIFO&#xff08;后进先出&#xff09;队列LifoQueue&#xff0c;以…

uniapp登录成功后跳回原有页面+无感刷新token

uniapp登录成功后跳回原有页面 引言 在C端的页面场景中&#xff0c;我们经常会有几种情况到登录页&#xff1a; 区分需要登录和不用登录的页面&#xff0c;点击需要登录才能查看的页面 已经登录但是超时&#xff0c;用户凭证失效等原因 以上情况可以细分为两种&#xff0c;一…

2023年全国青少信息素养大赛智能算法C++挑战赛复赛初中组真题,包含答案解析分享

【读前注意】:此卷是真题,答案解析辛苦整理,大家多多点赞并转发支持,需要下载空白文档题目版本(包含2023年小学组和初中组的题目pdf文件),可以在留言区的第一条留言的链接中进行复制,然后再浏览器中下载即可。 智能算法挑战复赛初中组 (总共

AngularJS基础语法(2009版本)

jquery和AngularJS 数据绑定和获取对比&#xff1a; jquery&#xff0c;要操作DOM&#xff1a; angularJS&#xff0c;无需操作DOM就可以进行动态数据变化&#xff1a; 要使用Angularjs就需要在html页面先引入&#xff1a; ng-app&#xff1a; html页面中&#xff0c;需要给…

操作系统的体系结构:宏内核和微内核

操作系统的体系结构是一个开放的问题。操作系统在核心态为应用程序提供公共的服务&#xff0c;那么操作系统在核心态应该提供什么服务、怎样提供服务&#xff1f;有关这个问题的回答形成了两种主要的体系结构&#xff1a;宏内核和微内核。 宏内核&#xff1a;大而全 宏内核系统…

【面试题-004】ArrayList 和 LinkList区别

ArrayList 和 LinkedList 都是 Java 中常用的动态数组实现&#xff0c;都实现了 List 接口&#xff0c;但它们在内部数据结构和性能方面有所不同&#xff1a; 内部数据结构&#xff1a; ArrayList 是基于动态数组的数据结构&#xff0c;它允许快速随机访问。数组的大小在创建时…