win11下部署elastic9.0+常见问题及解决方法(续)

接上篇

在wsl ubuntu上安装docker引擎:

首先卸载旧版本:

bash 复制代码
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc | cut -f1)
 

如下图所示:

清理残留配置和数据

卸载后,建议清理残留的配置文件和数据目录:

bash 复制代码
sudo apt autoremove
sudo rm -rf /var/lib/docker
sudo rm -rf /etc/docker
 

验证卸载是否完成

检查是否仍有 Docker 相关进程或文件残留:

bash 复制代码
dpkg -l | grep -i docker
ps aux | grep -i docker
 

如果仍有残留,可以手动删除相关包:

bash 复制代码
sudo apt purge <package-name>
 

可选:完全删除 Podman 相关组件

如果不再需要 Podman,可以一并卸载:

bash 复制代码
sudo apt remove podman podman-docker
 

注意事项

  • 该命令会卸载列出的所有 Docker 相关包,确保不再需要它们。
  • 如果使用了自定义配置或数据卷,请提前备份 /var/lib/docker 等重要目录。

安装 Docker 官方 GPG 密钥

更新系统软件包列表确保获取最新版本信息:

复制代码
sudo apt update

安装必要的证书和工具以支持 HTTPS 传输:

复制代码
sudo apt install ca-certificates curl

创建密钥环目录并设置权限:

复制代码
sudo install -m 0755 -d /etc/apt/keyrings

下载 Docker 官方 GPG 密钥并保存到指定路径:

复制代码
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

调整密钥文件权限确保可读性:

复制代码
sudo chmod a+r /etc/apt/keyrings/docker.asc

配置 Docker APT 仓库源

通过管道命令写入仓库源配置(自动匹配当前系统版本):

复制代码
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF

更新软件包索引

刷新 APT 缓存使新配置生效:

复制代码
sudo apt update

关键注意事项:

  • 上述命令适用于 Ubuntu/Debian 系统
  • 需使用管理员权限执行所有命令
  • $UBUNTU_CODENAME 变量会自动检测当前系统版本代号
  • 若遇到权限问题可尝试在命令前添加 sudo -i 切换至 root 环境

整体操作如下图所示:

安装 Docker 软件包

在不同操作系统上安装 Docker 的方法有所不同,以下是安装步骤。

Ubuntu/Debian 系统 更新软件包索引并安装依赖工具:

bash 复制代码
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Docker服务启动验证

Docker服务在安装完成后会自动启动。

通过以下命令检查Docker运行状态:

bash 复制代码
sudo systemctl status docker

若服务未运行,可通过以下命令手动启动:

bash 复制代码
sudo systemctl start docker

设置Docker开机自启:

bash 复制代码
sudo systemctl enable docker

安装完成后,运行以下命令验证安装版本:

bash 复制代码
sudo docker --version

验证安装是否成功

运行 hello-world 镜像以验证 Docker 是否安装成功:

bash 复制代码
sudo docker run hello-world
 

如果安装正确,终端会显示以下类似信息:

applescript 复制代码
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
 

如果报Unable to find image 'hello-world:latest' locally错误,则重新拉取一下镜像,如下图所示:

本地设置 Elasticsearch 和 Kibana

在命令行中运行 start-local 脚本即可完成本地 Elasticsearch 和 Kibana 的配置。参照官方文档:

curl -fsSL https://elastic.co/start-local | sh

此时可能会报超时的错误,curl: (28) Failed to connect to elastic.co port 443 after 139070 ms: Couldn't connect to server

原因就是网址https://elastic.co/start-local访问不了

解决方法:

改为用:curl -fsSL https://www.elastic.co/start-local | sh

如下图所示:

执行过程中如果遇到权限问题:

permission denied while trying to connect to the docker API at unix:///var/r

则按照如下步骤解决:

添加用户到 Docker 组并应用更改

执行以下命令将指定用户添加到 docker 组中:

bash 复制代码
sudo gpasswd -a 【你的用户】 docker
 

激活新的组权限

为了使组权限变更立即生效,执行以下命令:

bash 复制代码
newgrp docker
 

注意事项

  • 确保替换命令中的 【你的用户】 为实际的用户名
  • 如果遇到权限问题,可能需要注销并重新登录系统
  • 在某些系统上,可能需要重启 Docker 服务才能使更改生效
相关推荐
逸模1 天前
告别熬夜手工整理台账,逸模智能归集实现项目数据自动化存档
大数据·运维·人工智能·笔记·其他·信息可视化·自动化
sbjdhjd1 天前
Redis 主从复制、哨兵高可用与 Cluster 集群部署实验手册
运维·前端·redis·云原生·开源·bootstrap·html
AOwhisky1 天前
MySQL 学习笔记(第四期):SQL 语言之多表查询
linux·运维·网络·数据库·笔记·学习·mysql
Phantom Void1 天前
服务器处理客户端请求的设计方法
linux·运维·网络
倔强的石头1061 天前
Fooocus开源神器+cpolarAI让绘画告别服务器依赖
运维·服务器·cpolar
wei_shuo1 天前
服务器挂了等用户投诉才发现?我用Beszel搭了轻量监控系统,宕机第一时间通知我
运维·服务器
王码码20351 天前
多台服务器怎么统一看状态?Beszel 轻量监控,搭起来不费事
运维·服务器·后端·安全·阿里云·接口·web
APItesterCris1 天前
实战教程:借助 Open Claw + 淘宝商品 API,低成本实现电商自动化监控与智能选品
大数据·运维·自动化
风曦Kisaki1 天前
# 自动化运维Day03:Ansible模块进阶(setup,debug),四种常用变量,进阶语法;Ansible Roles(角色)
运维·自动化·ansible
赵民勇1 天前
Linux strings命令详解
linux·运维