docker、es数据库

Docker 开源的应用容器引擎

Docker意为"搬运工","构建...装载...运行...任何应用...任何地方"

打包应用以及依赖包到一个可移植的镜像中,发布在 Linux或Windows操作系统的机器

容器是完全使用沙箱机制,相互之间不会有任何接口

Docker在本质上是一个附加系统

容器(container) 只读

镜像(image) 只读

容器 = 镜像 + 可读层

yum-utils是yum的工具包集合,由不同的作者开发,使yum使用起来更加方便和强大

$ sudo yum install -y yum-utils

帮助手册

docker --help

安装

yum install docker 安装

docker服务器启动

service docker start

关闭docker

service docker stop

使用docker运行名为hello-world的镜像

docker run hello-world

查看docker版本

docker -v

docker --version

docker运行相关信息

docker info

列出所有镜像

docker images

删除本地镜像

docker rmi +镜像名

列出本地容器

docker ps

搜索

docker search +镜像名

下载

docker pull +镜像名

启动某个镜像

docker run +镜像名

查看容器结果记录

docker logs +容器名

docker run相当于执行了两步操作:

1.将镜像放入容器中(docker create)

2.然后将容器启动,使之变成运行时容器(docker start)

docker start的作用是,重新启动被停止的容器

docker start +容器名

删除已经停止的容器

docker rm +容器名

查看容器日志

docker logs +容器名

容器改名,旧名字改为新名字

docker rename old_name new_name

镜像大小个数

docker system df

更改docker镜像源

vim /etc/docker/daemon.json

以上文件下加入以下镜像源

{

"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn", "https://reg-mirror.qiniu.com"]

}

虚拟机创建新用户enen

useradd enen

passwd enen

删除用户testuser

userdel testuser

未增加用户名时,默认切换到root用户下

su +用户名

hello-world下载运行成功

但是docker images有,docker ps没有显示

Linux下docker 容器退出bash的两种实现方法

Ctrl + d 退出并停止容器;

Ctrl + p + q 退出并在后台运行容器;

es数据库

docker search docker.io/elasticsearch

docker pull elasticsearch:7.7.0

简单运行:只挂后台,环境设为单机运行,映射端口只有一个,加镜像id

docker run -d -e "discovery.type=single-node" -p 9200:9200 7ec

docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.7.0

--name:设置镜像启动后的容器名称

-itd -i -t -d的缩写

-i 以交互模式运行容器,通常与-t同时使用

-t 为容器重新分配一个伪输入终端,通常与-i同时使用

-d 后台运行容器,并返回容器ID,也即启动守护式容器

-p: 指定端口映射,格式为:主机(宿主)端口:容器端口

-e: 指定容器内的环境变量

单机运行: discovery.type=single-node

加大内存设置:-e ES_JAVA_OPTS="-Xms512m -Xmx512m"

es镜像版本名称,用于识别,id也可以:elasticsearch:7.7.0

测试节点启动成功

http://192.168.91.120:9200/

查看集群节点

http://192.168.91.120:9200/_cluster/state?pretty

查看集群健康状态

http://192.168.91.120:9200/_cluster/health?pretty

https://blog.csdn.net/qq_40942490/article/details/111594267

改解决方法未解决任何问题,还未搞清楚

产生这个问题的原因是因为ES的安全机制问题,解决办法如下所示

(注意:ES禁止Linux使用root用户启动,因此必须使用非root用户启动):

vi /etc/security/limits.conf

末尾加上以下四行

esyonghu soft nofile 65536

esyonghu hard nofile 65536

esyonghu soft nproc 4096

esyonghu hard nproc 4096

cd /etc/security/limits.d

vi 20-nproc.conf

修改某一行的*为用户名

-# Default limit for number of user's processes to prevent

-# accidental fork bombs.

-# See rhbz #432903 for reasoning.

* soft nproc 4096

root soft nproc unlimited

将*号改成用户名

esyonghu soft nproc 4096

root soft nproc unlimited

vi /etc/sysctl.conf

增加以下一行在末尾

vm.max_map_count = 655360

sysctl -p

根据上面命令查看是否修改成功

vm.max_map_count = 655360

相关推荐
企业软文推广12 分钟前
软文实战技巧:如何利用媒体平台资源提升品牌影响力?
大数据·python
狐凄32 分钟前
Python一些项目bug
windows·python·bug
pumpkin8451437 分钟前
Ray 和 PyTorch
人工智能·pytorch·python
独行soc43 分钟前
信息收集ip测活-Python脚本编写
linux·服务器·python
蚂蚁在飞-1 小时前
云原生时代的轻量级反向代理Traefik
云原生·golang
赛丽曼1 小时前
Python中的深浅拷贝
开发语言·python
A Runner for leave1 小时前
105.找到冠军
java·数据结构·python·算法·leetcode
流着口水看上帝1 小时前
一文掌握如何用python开发小程序
python·小程序
Lorin 洛林2 小时前
Spring Cloud Netflix 系列:Eureka 经典实战案例和底层原理解析
云原生·eureka
技术程序猿华锋2 小时前
【ChatGPT大模型开发调用】如何获得 OpenAl API Key?
python·chatgpt·flask