Linux 系统Centos7.0记录安装Docker和安装jdk环境完整教程(建议收藏备用)

本文主要是介绍Linux 系统Centos7.0记录安装Docker和安装jdk环境完整教程(建议收藏备用),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Linux 系统Centos7.0记录安装Docker和安装jdk环境完整教程(建议收藏备用)

一、安装前准备工作

1.1 查看服务器系统版本以及内核版本
cat /etc/redhat-release
1.2 查看服务器内核版本
uname -r

image-20240327110849824
这里我们使用的是CentOS 7.9 系统,内核版本为3.10

1.3 安装依赖包 (step 1: 安装必要的一些系统工具)
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

image-20240327111134519

遇到这个报错,首先确定 有没有网络访问权限,网络配置,解决不能联网、ping不通外网、主机的问题

没遇到报错的,直接跳到1.4

第一种解决方法

  1. 首先运行:yum clean all
  2. 然后运行:yum repolist all

第二种 相对麻烦

可以从网上下载一个可以访问的YUM源放到【/etc/yum.repos.d】目录下 自行去下载解决,提前备份好

curl -o /etc/yum.repos.d/CentOS-Base-Ali.repo http://mirrors.aliyun.com/repo/Centos-7.repo

第三种 把虚拟机的网关 重新设置一下 和dns也都重新设置一下,别人我看都生效了,就我的没生效

先能保证ping www.baidu.com 是通的

image-20240327134227137

image-20240327134237444

image-20240327134253121

image-20240327134311692

image-20240327134326756

最主要的是设置dns 114.114.114.114 或者8.8.8.8

默认的ip地址也要设置好

设置完 一定要

centos6 :

service network restart

centos7 :

systemctl restart network.service 或者systemctl restart network重启网络

实在解决不了

https://blog.csdn.net/weixin_45293769/article/details/119570874

可以看下这个文章,我是通过这个ping通的,主要是第一步没有选择net 模式

image-20240327162721593

好废话,不多说。

出现这种情况就是成功了。

image-20240327164723297

image-20240327163810407

1.4 设置阿里云镜像源(Step 2: 添加软件源信息)
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

image-20240327163829790

####1.5 更新yum索引(Step 3: 更新yum索引列表并安装Docker引擎)

sudo yum makecache fast

image-20240327164144600

yum索引列表没有更新可以直接使用yum makecache

二、准备工作结束,开始安装Docker

2.1 Docker版本说明
Docker从17.03版本之后分为两个版本:社区版(Community Edition,缩写为 CE)和企业版(Enterprise Edition,缩写为 EE)。
企业版包含了一些收费服务,个人开发者一般用不到,所以我们只需要安装社区版docker-ce版本即可。
2.2 docker-ce安装
sudo yum install docker-ce

安装过程中会提示确认,输入y以确认。

image-20240327164550447

安装完成!

image-20240327164620253

2.3 启动docker并设置开机自启
#启动docker命令
sudo service docker start
sudo systemctl start docker
#设置开机自启命令
sudo systemctl enable docker
#查看docker版本命令
sudo docker version

image-20240327164901813

image-20240327164955261

三、Docker基本概念介绍

3.1 仓库 (repository)
docker仓库是用来保存镜像的地方。镜像构建完成后,可以直接在当前宿主机上运行,但是如果需要在其它服务器上使用这个镜像,
就需要一个集中存储、分发镜像的服务,docker仓库就是这样的一个服务。
3.2 镜像(Image)
这里面保存了应用和需要的依赖环境,比如运行的runtime和webapp等。
为什么需要多个镜像?当开发、构建和运行容器化应用程序时,我们通常会有不同优先级。通过为这些独立的任务提供不同镜像 
3.3 容器(Container)
镜像的实例。一个容器代表一个正在运行的应用程序、进程或服务。它由 Docker 镜像、执行环境和标准指令集组成。需要扩展服务时,才
真正将镜像跑起来的东西,镜像在容器里面。可以看作是一个完全隔离的盒子。一个容器镜像实例代表一个独立的进程。

四、Docker常用命令

docker search --镜像名    搜索仓库镜像docker pull --镜像名    拉取镜像docker ps     查看目前正在运行的所有容器 (-a 显示包括已经停止的容器)docker rmi image_id/image_name    删除镜像docker build    使用Dockerfile创建镜像docker run    运行容器docker exec    进入容器中执行命令 (例如:docker exec -it  container_id/container_name /bin/bash)docker logs  container_id/container_name   查看容器日志(例如:docker logs -f -t --tail 10 container_id )docker start  container_id/container_name    启动容器docker restart  container_id/container_name    重启容器docker stop container_id/container_name    停止容器docker rm container_id/container_name    删除容器(只能删除已停止的容器)更多的命令可以通过docker help命令来查看。

五、安装Docker可视化管理工具Portainer

5.1 搜索镜像
docker search java

image-20240327165545982

docker search jdk8

image-20240327170246042

5.2 拉取镜像
#拉取镜像命令
docker pull ascdc/jdk8
#查看镜像命令
docker images
#删除镜像命令
docker rmi ascdc/jdk8

image-20240327171228386

image-20240327171239835

5.3 运行镜像(运行容器)
#启动容器
docker run -d -it --name java-8 java:8
# 其中,--name后面的“java”是为容器指定了一个别名,而最后的那个“java”指的是下载镜像时的名称。
#查看启动中的容器
docker ps

image-20240327173543083

image-20240327173612447

启动参数说明:

-it  输出容器命令行的内容 即容器的自身的程序输出在控制台 有点类似前台运行-d  和it相反  隐藏后台运行-p  端口映射 9000::9000 外部(宿主机)端口:镜像里面运行的端口 将宿主机9000端口映射到镜像里面的9000端口--restart  重启方式:always跟随docker自启--name  启动后的容器名称-v  挂载容器数据卷--network  连接到某个网络(例如:--network test_net)--network-alias  容器的网络名称(例如:--network-alias jdk)
5.4登录查看容器中安装的jdk版本
docker attach d2

其中的 “d2” 指的是什么呢?

上面有提到过,我们启动的java镜像的容器ID是“d264cb834bf6ad4e5e56c7ca16578390161f8b75ea029b33c5bc977de724b94c”,所以, docker attach 命令后面,你可以指定容器ID来进入具体的容器。可以指定d2、d264、d264cb834bf等任意长度的值,都代表了当前的java容器。

回车,效果如下图:

image-20240327173932059

除了使用容器ID进入容器之外,也可以使用容器的别名进入容器:

docker attach java

上面这种是通过容器的别名进入容器内部的。

  • 使用exec命令进入容器

【方式一】:通过容器别名进入容器:

docker exec -it java8 /bin/bash

【方式二】:通过容器ID进入容器:

docker exec -it d2 /bin/bash

后面有空把发布java项目的也加进来!

六、卸载Docker

#删除docker-ce命令
yum remove docker-ce
#删除镜像、容器、配置文件等内容
rm -rf /var/lib/containerd
rm -rf /var/lib/docker

七、总结

本篇文章带大家完整的在Linux操作系统上安装Docker社区版,以及安装可视化管理工具Portainer,介绍了如何启动docker、拉取镜像、运行容器及docker的常见命令。
记录一次完整安装和解决安装docker的问题,如果觉得文章写得不错的话,建议转发、收藏,以备不时之需。

这篇关于Linux 系统Centos7.0记录安装Docker和安装jdk环境完整教程(建议收藏备用)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/853192

相关文章

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

统一返回JsonResult踩坑的记录

《统一返回JsonResult踩坑的记录》:本文主要介绍统一返回JsonResult踩坑的记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录统一返回jsonResult踩坑定义了一个统一返回类在使用时,JsonResult没有get/set方法时响应总结统一返回

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构