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 服务才能使更改生效
相关推荐
乘云数字DATABUFF4 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--6 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森6 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜6 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB7 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode9 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220709 天前
如何搭建本地yum源(上)
运维
大树8812 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠12 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质12 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务