Docker 学习之路-从入门到放弃:3

阿里云Docker服务流程指南:访问+排障+初始化

Portainer、MySQL、Redis、Jenkins、Nginx五大服务,按照「先学会正常访问→再解决连不上问题→最后完成服务初始化」的顺序梳理,一步步带你从零上手,避开所有新手坑。

新手先看懂:

先把你看不懂的核心表述讲透,再看操作步骤完全不费劲,对应文档里的高频关键词,逐个翻译:

  • Docker容器:就是独立的小软件包,你装的Portainer、MySQL这些,都是一个个单独的容器,互不干扰,启动后就能用。
  • 端口:相当于服务器的"小门",每个服务占一个专属小门,比如9000是Portainer的门、8080是Jenkins的门,外人要访问必须开对应的门。
  • 公网IP:阿里云服务器对外的唯一地址,你浏览器访问、客户端连接,全靠这个IP,相当于服务器的"家庭住址"。
  • 安全组/入方向规则:阿里云的外层防火墙,默认锁着所有小门(端口),必须手动解锁(添加规则),外面才能进来访问。
  • 授权对象0.0.0.0/0:允许任何人、任何设备打开这个端口(测试用,不安全);改成自己IP/32,就是只允许你自己的电脑访问。
  • 自定义TCP:固定选这个就行,不用管原理,所有网页、数据库连接都用这个协议。
  • Portainer:Docker的图形化遥控器,不用输命令,点鼠标就能管所有容器。
  • Jenkins插件:Jenkins的"功能补丁",推荐插件就是官方帮你装好常用补丁,不用自己找。
  • 客户端:连接MySQL/Redis的专用工具,相当于远程操控数据库的软件,不是网页。
  • docker ps等命令:服务器里的操控指令,复制粘贴就能用,不用背,照着输就行。

第一部分 Docker服务启动后,如何连接/访问?

当你通过Docker命令启动Portainer、MySQL、Redis、Jenkins、Nginx容器后,无需复杂配置,按照对应服务的端口和访问方式操作即可,部分服务自带图形界面,部分需搭配客户端工具,下方附图文指引+详细步骤。

【插图:是上一章节的内容】

示意图标注说明:左侧为服务器本地/公网访问端,中间为阿里云服务器,右侧为Docker容器,标注五大服务宿主机映射端口容器内部端口对应关系,直观展示访问链路,新手可对照查看端口是否匹配。

一、自带图形界面的服务(浏览器直接访问)

1. Portainer(Docker可视化管理面板)

作用:图形化管理所有Docker容器、镜像、网络,替代繁琐的命令行操作,小白必备。

访问方式:浏览器直接输入地址

核心特点:纯图形界面,无需命令行,登录后可一键查看容器状态、启动/停止容器。

2. Jenkins(自动化构建部署工具)

作用:实现项目自动化编译、部署,日常开发CI/CD核心工具。

访问方式:浏览器直接输入地址

核心特点:首次打开需初始化解锁,后续全程图形化操作,无命令行门槛。

3. Nginx(Web服务器/反向代理)

作用:部署静态网站、反向代理其他服务,统一访问入口。

访问方式:浏览器直接输入地址

核心特点:无专属管理图形界面,访问默认端口可测试服务是否正常运行。

二、无原生图形界面的服务(需客户端连接)

1. MySQL(数据库服务)

作用:存储项目数据,无自带图形界面,需专用数据库客户端连接。

连接方式:

  • 图形化客户端:Navicat、DBeaver、MySQL Workbench(新手推荐DBeaver,免费开源)
  • 连接参数:主机=阿里云公网IP,端口=3306,用户名=root,密码=启动容器时设置的MYSQL_ROOT_PASSWORD
  • 命令行临时连接:docker exec -it 容器名 mysql -u root -p(输入密码即可进入数据库)

2. Redis(缓存数据库)

作用:项目高速缓存,无自带图形界面,需Redis专用客户端连接。

连接方式:

  • 图形化客户端:Another Redis Desktop Manager(免费好用,新手首选)
  • 连接参数:主机=阿里云公网IP,端口=6379,密码=启动容器时设置的密码(建议必设)
  • 命令行临时连接:docker exec -it 容器名 redis-cli

第二部分 服务启动后连接不上?核心解决方案

新手遇到连接失败、浏览器打不开、客户端连不上,99%的原因都是阿里云安全组端口未放行,其次是容器未正常运行,按照下方步骤逐一排查,1分钟解决问题。

第一步 核心排查:阿里云安全组放行端口(最关键)

阿里云服务器默认仅放行22(SSH远程)端口,3306、6379、9000、8080等端口全部被防火墙拦截,必须手动添加入方向规则。

小白极简操作步骤:

  1. 登录阿里云控制台,找到你的云服务器ECS,进入网络与安全组安全组入方向规则
  2. 点击添加入方向规则,按照下方参数填写(新手先填测试版,后续再改安全版)
  3. 配置项测试版填写内容说明授权策略允许必须选允许,否则端口仍拦截协议类型自定义TCP所有服务均用TCP协议端口范围9000/9000,8080/8080,3306/3306,6379/6379,80/80单个端口格式:起始端口/结束端口,多端口用英文逗号分隔授权对象0.0.0.0/0测试用,允许所有IP访问,连通后务必改成自己IP优先级100默认即可,无需修改
  4. 点击确定保存,规则实时生效,无需重启服务器和容器

第二步 次要排查:容器是否正常运行

  1. SSH连接阿里云服务器,执行命令:docker ps
  2. 查看容器STATUS列,显示Up XX minutes/hours 代表正常运行;显示Exited代表容器启动失败,需重启容器:docker restart 容器名

第三步 简易排查:服务器内部防火墙

阿里云Alibaba Cloud Linux系统默认内部防火墙为关闭状态,若仍连不上,执行以下命令临时放行端口即可:

firewall-cmd --permanent --add-port=端口号/tcp && firewall-cmd --reload

第三部分 连接成功后,服务初始化实操(重点Jenkins完整版)

端口连通、能正常访问后,部分服务需要完成初始化才能使用,重点讲解Jenkins完整初始化步骤,顺带补充Portainer基础初始化,MySQL和Redis只需确认密码即可使用。

一、Jenkins完整初始化步骤(新手必看,含二选一抉择)

浏览器打开http://阿里云公网IP:8080,进入Jenkins初始化页面,全程按步骤操作,无难度。

步骤1 解锁Jenkins

  1. 页面提示需要初始管理员密码,SSH连接服务器,执行以下命令获取密码:
  2. docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword
  3. 复制命令输出的一串字符密码,粘贴到网页解锁框,点击继续

步骤2 插件安装二选一(新手闭眼选第一个)

这是新手最容易纠结的环节,两个选项清晰对比,直接照选即可:

✅ 首选:安装推荐插件(新手唯一选择)

Jenkins官方预装通用必备插件,涵盖代码拉取、项目构建、日志查看等核心功能,无需手动挑选,自动安装,适配99%新手场景,安装过程耐心等待3-5分钟(取决于服务器网速),切勿关闭页面。

❌ 备选:选择插件来安装(进阶用户专用)

自定义勾选插件,适合懂Jenkins的老手,新手选这个容易漏装核心插件,导致后续功能无法使用,完全不建议。

步骤3 创建管理员账号

  1. 插件安装完成后,进入账号创建页面,填写用户名、密码、确认密码、全名、电子邮箱(邮箱随便填即可)
  2. 牢记设置的用户名和密码,后续登录Jenkins必备
  3. 点击保存并完成 ,再点击开始使用Jenkins,初始化完成

二、Portainer基础初始化

  1. 浏览器打开http://阿里云公网IP:9000,首次进入设置管理员用户名+强密码
  2. 选择Docker 选项,点击Connect,直接进入管理面板,即可图形化管理所有Docker容器

三、MySQL/Redis初始化提示

  • MySQL:启动容器时已设置root密码,客户端连接成功后,直接创建数据库、数据表即可,无需额外初始化
  • Redis:启动容器时设置密码,客户端连接成功后即可正常使用,建议修改默认端口,加强密码复杂度

四、新手安全提醒(必看)

|----------------------------------------------------------------------------------|
| 测试连通后,务必将阿里云安全组授权对象从0.0.0.0/0改成自己电脑的公网IP/32(百度搜索IP即可查看),仅允许自己访问高危端口,避免被黑客入侵! |

相关推荐
F1FJJ2 小时前
Shield CLI v0.3.3 新增 PostgreSQL 插件:浏览器里管理 PG 数据库
网络·网络协议·docker·postgresql·容器·go
技术栈壳2 小时前
搭建docker hub私有仓库
运维·docker·容器
wuxia21182 小时前
云计算技术与实践(微课版)
docker·kubernetes·云计算
万象.2 小时前
docker网络种类,架构及命令
网络·docker·架构
qq_297574672 小时前
K8s系列第十五篇(终篇):K8s 集群优化实战:性能、稳定性与安全性优化
docker·容器·kubernetes
CIAS2 小时前
openclaw 扩展企业微信模块
docker·openclaw
回到原点的码农2 小时前
Node.js 与 Docker 深度整合:轻松部署与管理 Node.js 应用
docker·容器·node.js
蜕变的小白2 小时前
嵌入式硬件的学习----ARM
arm开发·嵌入式硬件·学习·arm
阿斌_bingyu7092 小时前
从入门到精通-系统深度的学习openclaw
学习