Linux使用全应用

news2025/6/12 18:53:34

一、CentOS安装Docker

Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10, CentOS 7 满足最低内核的要求,所以我们在CentOS 7安装Docker。

基础命令

搜索镜像:docker search mysql
下载镜像:docker pull docker.io/mysql:5.7
查看镜像:docker images
删除镜像:docker rmi 镜像id
 
启动镜像作为容器:
	docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d docker.io/mysql:5.7 --lower_case_table_names=1
	docker run --name 容器名 -d - p 3306:3306 mysql  docker 启动容器
	run(创建并运行一个容器) 
	-d 放在后台 
	-p 端口映射 :docker的容器端口
	-P 随机分配端口
	-v 源地址(宿主机):目标地址(容器)
 
打开端口号:firewall-cmd  --zone=public --add-port=8080/tcp -permanent
重启防火墙:firewall-cmd  --reload
查看容器:docker ps -a
进入某个容器:docker exec -it 容器id  /bin/bash
进入容器mysql:mysql -uroot -p
停止容器:docker stop 容器id
杀死容器:docker kill 容器名称 
容器状态:docker ps | grep 容器id
重启容器:docker restart 容器id
删除容器:docker rm 容器id
 
 
将一个终止状态(stopped)的容器重新启动:
[root@localhost ~]# docker ps -a  # 先查询记录
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                        PORTS                    NAMES
ee92fcf6f32d        centos              "/bin/bash"              4 days ago          Exited (137) 3 days ago                                kickass_raman
 
[root@localhost ~]# docker start ee9  # 再启动这个容器
ee9
 
[root@localhost ~]# docker exec -it  ee9 /bin/bash  # 进入容器交互式界面
[root@ee92fcf6f32d /]#   # 注意看用户名,已经变成容器用户名

1、卸载(视情况)

如果之前安装过旧版本的Docker,可以使用下面命令卸载:

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine \
                  docker-ce

2、安装docker

首先需要大家虚拟机联网,安装yum工具

yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2 --skip-broken

然后更新本地镜像源:

# 设置docker镜像源

yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum makecache fast

然后输入命令:

yum install -y docker-ce 

docker-ce为社区免费版本。稍等片刻,docker即可安装成功。

3、启动docker

Docker应用需要用到各种端口,逐一去修改防火墙设置。非常麻烦,因此建议大家直接关闭防火墙!

启动docker前,一定要关闭防火墙后!!

启动docker前,一定要关闭防火墙后!!

启动docker前,一定要关闭防火墙后!!

# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld

通过命令启动docker:

systemctl start docker  # 启动docker服务

systemctl stop docker  # 停止docker服务

systemctl restart docker  # 重启docker服务 

然后输入命令,可以查看docker版本

docker -v 

启动并加入开机启动

 sudo systemctl start docker
 sudo systemctl enable docker 

 

二、Docker安装Redis

1.拉起Redis镜像

可先搜索Redis版本

docker search redis

建议直接装最新版

docker pull redis 

自己选择版本

docker pull redis:latest 

  

2、配置挂载目录及config文件

本人挂载目录:docker/redis

创建data文件

mkdir -p /docker/data

下载redis.conf文件 

wget http://download.redis.io/redis-stable/redis.conf 

结构如下:

redis.conf修改点:

bind 127.0.0.1通过#注释掉,解除本地连接限制

protected-mode no,保护模式,限制为本地访问,修改后解除保护模式

daemonize yes 默认no 为不守护进程模式,修改为yes

requirepass  rootroot  设置启用密码

3.运行Redis

docker run -d -p 6379:6379 \
--name redis \
--restart=always \
-v /docker/redis/data:/usr/local/redis/data \
-v /docker/redis/redis.conf:/usr/local/redis/redis.conf \
redis:latest; 

 查看Redis运行状态

docker ps 

 

外部连接即可 

4、问题:在学习Docker的时候遇到pull失败的情况

解决方法:切换到阿里云镜像

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://yxzrazem.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

同步时间:

ntpdate time.windows.com 

三、Centos安装JDK

1、检查是否已经安装过JDK

yum list installed|grep java-1.8.0-openjdk* 

2、如果已经安装了,需要卸载后重新安装 

yum remove -y java-1.8.0-openjdk*

3、开始安装jdk1.8

yum install -y java-1.8.0-openjdk* 

4、检查是否安装成功

[root@localhost~]# java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode) 

四、Docker安装mysql

1、查询 mysql 镜像

docker search mysql

2、拉取 mysql 镜像,不加版本号则默认拉取最新版本

docker pull mysql  #可以选择特定版本,如 docker pull mysql:5.7

3、创建应用目录,如:/docker/mysql 

4、设置参数

docker run \

--name mysql \

-e MYSQL_ROOT_PASSWORD=msir1234 \

-p 3306:3306 \

-v /docker/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf \

-v /docker/mysql/data:/var/lib/mysql \ -d \

mysql:5.7

五、Dcoker安装ElasticSearch

1. 拉取elasticsearch镜像

拉取最新版本elasticsearch

docker pull elasticsearch:7.11.1

2. 配置elasticsearch端口,挂载数据卷

docker run --name es -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
-v es-data:/docker/elasticsearch/data \
-v es-plugins:/docker/elasticsearch/plugins \
-d elasticsearch:7.11.1

3. 验证elasticsearch是否启动成功

linux内用curl访问: curl http://localhost:9200,输入类似如下的信息表示安装成功

linux内用curl访问: curl http://localhost:9200,输入类似如下的信息表示安装成功

 

windows访问:使用自己的ip地址和域名 

六、Docker安装kibana(ES)

1、安装kibana版本与elasticsearch版本一致,即7.11.1

docker pull kibana:7.11.1 

docker images查看docker的安装内容 

2. 启动kibana

安装完成以后需要启动kibana容器,使用–link连接到elasticsearch容器,命令如下:

注意这里的elasticsearcha:elasticsearcha要和上面的一致:

docker run --name kibanaa --link=elasticsearcha:elasticsearcha -p 5601:5601 -d kibana:7.11.1

3、Kibana server is not ready yet报错

 解决办法:

故执行如下命令查看elasticsearch容器内部ip,发现果然是kibana.yaml配置文件中的es容器ip与现在实际的es容器ip不一致造成的。

# docker inspect --format '{{ .NetworkSettings.IPAddress }}' 容器id

docker inspect --format '{{ .NetworkSettings.IPAddress }}' 1b575fd64acf

# 查看es容器id

docker ps

进入kibana容器,更新kibana.yaml配置文件。执行如下命令进入并编辑kibana.yaml,

# docker exec -it kibana容器id/bin/bash

docker exec -it 1b575fd64acf /bin/bash

 进入修改配置

cd config

vi kibana.yml

 

按  i  键进入编译模式

将下图所选部分的ip地址更换成实际的es容器ip地址

修改完成按 Esc  键

按 键进入底线命令

底线命令输入  wq  就可以保存并退出vi编译器

按  ctrl+D  键退出exec模式

 重启容器

docker restart  容器id

 然后访问,访问成功

http://192.168.58.128:5601/

4、设置为中文

虽然已经安装好了,但是英文看起来不流畅

查看Kibana容器id

docker ps

进入到容器 

# docker exec -it kibana容器id/bin/bash

docker exec -it b3e038d8cae6 /bin/bash

查看目录并进入到config目录下 

cd config 

编辑 kibana.yml 文件 

 vi kibana.yml  

文件末尾添加 

i18n.locale: "zh-CN" 

修改完成 英文模式下 按esc退出编辑模式 后保存配置

esc键
:wq

重启kibana

docker restart kibana容器Id 

 

翻译结果:

七、Docker安装IK分词器

进入elasticsearch容器

docker exec -it es /bin/bash

在校安装

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.11.1/elasticsearch-analysis-ik-7.11.1.zip

测试成功

 IK分词器包含两种模式

  • ik_smart:最少切分
  • ik_max_word:最细切分

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

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

相关文章

[架构之路-197]-《软考-系统分析师》- 关键技术 - 问题分析阶段重要的四个任务

目录 前言&#xff1a; 一、信息系统/软件产品的问题分析概述 二、信息系统/软件产品的问题/痛点分析四步骤 步骤1、问题领域分析&#xff1a;研究遇到问题的业务领域&#xff08;诉求&#xff09; 步骤2、 领域问题和机会分析&#xff1a;分析业务领域的问题、痛点、难点…

计算机网络学习 一 (计算机网络体系结构)

计算机网络 基本概念 计算机网络是一个将分散的,具有独立功能的计算机系统. 简单来说,计算机网络就是一些互连的,自治的计算机系统的集合 分类 广义上:是一个资源共享的系统. 资源共享上: 1.目的–资源共享 2.组成单元–分布在不同地理位置的多台独立的"自治计算机"…

第十四届蓝桥杯青少组模拟赛Python真题 (2022年11月8日)

第十四届蓝桥杯青少组模拟赛Python真题 (2022年11月8日) 编程题 第 1 题 问答题 二进制位数 十进制整数2在十进制中是1位数&#xff0c;在二进制中对应10&#xff0c;是2位数。 十进制整数22在十进制中是2位数&#xff0c;在二进制中对应10110&#xff0c;是5位数。 请问十…

Linux高级---k8s之service服务

文章目录 一、service基本概念二、service类型三、service的使用1、实验环境准备2、ClusterIP类型的Service3、HeadLiness类型的Service4、NodePort类型的Service5、LoadBalancer类型的Service6、ExternalName类型的Service 一、service基本概念 在kubernetes中&#xff0c;pod…

【Java多线程编程】线程的六种状态

前言&#xff1a; 在我们进行多线程编程&#xff0c;脑海里会想到线程运行的状态到底是什么&#xff1f;因此我整理出这线程的状态这篇博文。线程的状态分为六种&#xff1a;新建状态&#xff08;NEW&#xff09;、就绪状态&#xff08;RUNNABLE&#xff09;、阻塞状态&#xf…

1-Linux环境安装JDK

Linux环境安装JDK 准备&#xff1a; ① Linux 环境 本文中Linux环境为 CentOS Linux 7 可使用以下命令查询 linux 系统版本&#xff1a; hostnamectl② 准备JDK包 进入官网 https://www.oracle.com/java/technologies/downloads/#java17下载对应jdk包 此处使用以前下载的旧…

Linux驱动编程(驱动程序基石)(下)

一、中断的线程化处理 复杂、耗时的事情&#xff0c;尽量使用内核线程来处理。上节视频介绍的工作队列用起来挺简单&#xff0c;但是它有一个缺点&#xff1a;工作队列中有多个 work&#xff0c;前一个 work 没处理完会影响后面的 work。解决方法有很多种&#xff0c;比如干脆…

String类的学习笔记(下):字符串拼接以及StringBuilder和StringBuffer的学习

本文介绍了String类对字符串进行拼接的方法 和拼接字符串的效率分析 以及能对字符串内容进行修改的StringBuilder和StringBuffer类其常用方法和区别 , 最后介绍了两个字符串经典面试题 StringBuilder和StringBuffer的学习 一.String类概括二.StringBuilder和StringBuffer1.字符…

是未来的超级计算机还是只是一场炒作?

随着科技的飞速发展和创新&#xff0c;量子计算技术逐渐成为了人们关注的热点话题。量子计算作为一种前沿的计算方式&#xff0c;具有超强的运算能力和突破性的创新潜力&#xff0c;因此备受瞩目。然而&#xff0c;随着各大公司和机构纷纷加入到这一领域的竞争中&#xff0c;一…

超详细github配置(仔细看,看完不会,你怪我)

github的重要性&#xff1a; 网络时代的程序员必备。 github的作用&#xff1a; 版本管理多人协作开源共享 常用方案&#xff1a; gitTortoiseGitgithub [Tortoise&#xff0c;程序员常称其为小乌龟&#xff0c;小海龟] 安装配置步骤 1.注册 GitHub: Where the world bu…

服务(第二十二篇)主从复制和读写分离

主从复制原理&#xff1a; 首先主节点会开启二进制日志&#xff0c;从节点会开启中继日志&#xff0c;从节点会开启io线程检测主节点是否有更新&#xff0c;如果更新了就会向主节点请求二进制事件&#xff0c;主会开启dump线程发送二进制事件&#xff0c;然后保存在从节点的中…

假如面试官让你十分钟完成双向循环链表

&#x1f48c; 博客内容&#xff1a;假如面试官让你十分钟完成双向循环链表&#xff0c;多一秒都不行 &#x1f600; 作  者&#xff1a;陈大大陈 &#x1f680; 个人简介&#xff1a;一个正在努力学技术的准前端&#xff0c;专注基础和实战分享 &#xff0c;欢迎私信&…

大前端技能讲解:NodeJS、Npm、Es6、Webpack

文章目录 1. 基础概述2. Nodejs2.1 Nodejs 了解和快速入门2.2 Nodejs 实现 Httpserver 服务&#xff08;实现请求响应&#xff09;2.3 Nodejs 操作 MySQL 数据库 3. ES63.1 ES6 的概述3.2 ES6 的语法&#xff1a;let 和 const 命令3.3 ES6 的语法&#xff1a;模板字符串3.4 ES6…

基于SSM的在线电影购票系统设计与实现【附源码】

基于SSM的在线电影购票系统设计与实现 互联网的不断迅猛发展&#xff0c;每个行业都在寻找新的机会&#xff0c;都在从传统的人工方式向先进的信息化过度。随着人民生活水平的提高伴随的精神文化层次的享受&#xff0c;而现代互联网时代人们的重要精神消费之一是电影行业&…

NAS +AList实现云盘映射(本地硬盘扩容大法)

准备工具&#xff1a; 1&#xff09;Alist的docker &#xff1a;xhofe/alist 2&#xff09;RailDrive软件 安装&#xff1a; 1&#xff09;安装alist的docker 注意一定要给读写权限&#xff0c;装载路径和我一样 端口一般和容器端口一致 环境变量 网络桥接就行 记得勾选自…

【Prompting】ChatGPT Prompt Engineering开发指南(1)

ChatGPT Prompt Engineering开发指南1 Prompting指南设置 提示原则策略1&#xff1a;使用分隔符清楚地指示输入的不同部分策略2&#xff1a;要求结构化输出策略3&#xff1a;让模型检查条件是否满足策略4: “Few-shot”提示 原则2&#xff1a;给模型时间“思考”策略1&#xff…

idea新建springboot项目并提交码云仓库

新建springboot项目 平常我们在使用联网方式新建springboot项目时总是会遇到连接失败等这种情况 IDEA创建项目&#xff0c;本质是从官网创建并下载项目&#xff0c;然后导入本地。 创建项目连接失败&#xff0c;一般是外国网站的原因导致连接超时&#xff0c;解决方式很简单&a…

C++linux高并发服务器项目实践 day11

Clinux高并发服务器项目实践 day11 线程同步互斥锁死锁读写锁读写锁相关操作函数 生产者消费者模型条件变量信号量 线程同步 线程的主要优势在于&#xff0c;能够通过全局变量来共享信息。不过&#xff0c;这种便捷的共享是有代价的:必须确保多个线程不会同时修改同一变量&…

LabVIEWCompactRIO 开发指南17 网络流

LabVIEWCompactRIO 开发指南17 网络流 网络流类似于队列函数&#xff0c;因为它们是基于FIFO的&#xff0c;但与队列函数不同的是&#xff0c;网络流具有网络作用域。它们是为通过以太网进行无损、高吞吐量数据通信而设计和优化的&#xff0c;并且它们具有增强的连接管理功能…

Springboot +Flowable,各种历史信息如何查询(三)

一.简介 正在执行的流程信息是保存在以 ACT_RU_ 为前缀的表中&#xff0c;执行完毕的流程信息则保存在以 ACT_HI_ 为前缀的表中&#xff0c;也就是流程历史信息表。 假设有一个流程&#xff0c;流程图如下&#xff1a; 当这个流程执行完毕后&#xff0c;以 ACT_RU_ 为前缀的…