魔法猫
魔法猫
Published on 2025-09-27 / 25 Visits
0
0

1Panel部署及使用简单示例

#PT

盒子系列教程,演示1Panel部署以及简单使用(以Netcup服务器为例)。

引言——1Panel简介

1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。

简单来说,就是一个图形化的服务器管理工具,可以通过浏览器使用,可以大幅降低服务器的操作难度。

官网地址:https://1panel.cn/
Github 地址:https://github.com/1Panel-dev/1Panel

本文针对常用功能给出示例,如需进阶使用/设置,请参考官方文档

特别说明: 根据社区反馈,V2版本仍不够稳定。本文演示安装 V1,二者功能差异不大,但 V1 胜在更稳定,推荐普通用户使用。

准备事项

  • 服务器
    官方建议内存 ≥ 1GB(实测至少需要≥512MB,否则极易报错 )
    推荐使用Debian系统(Debian11/12/13皆可),本文也以 Netcup 服务器运行 Debian 12为例进行演示
    Netcup服务器相关,参考:Netcup服务器购买示例

  • 稳定的网络环境和浏览器
    推荐使用 Chrome/Edge 浏览器

  • SSH终端软件
    本文使用Termius

  • 域名
    非必须,如果希望加密访问(HTTPS)或使用反向代理则为必选项

部署演示

安装命令参考官方文档,根据使用的系统选择对应命令:1Panel安装部署

复制到SSH中粘贴回车,如果提示curl未安装/curl命令未找到,就安装下curl,然后再重新执行上一条

sudo apt install curl -y

稍等下载好安装包后会询问选择语言,输入数字2后回车

然后会询问安装目录,直接回车即可

接下来会自动安装Docker,自动选择软件源等,也会输出一些安装信息,稍等即可,完成后会让选择面板端口,直接回车使用默认即可

然后设置安全入口,建议直接回车使用默认,同样的,面板用户和密码可以默认

等待自动安装,安装后会再次输出安装信息,记得保存账号密码以及安全入口

如果安装过程中出现error提示,很可能是内存不足,可以尝试增加swap后重新安装

访问面板

根据提示信息在浏览器中访问对应地址(如需加密访问可以使用SSH隧道进行端口映射,后续再部署TSL证书,该部分在下文“面板配置”中的“配置面板证书(HTTPS)”中展开,这里不多赘述)

注意:如果你的服务商有额外的防火墙(例如阿里云/腾讯云),记得在厂商后台放开1Panel对应的端口,例如这里是39193/TCP连接,Netcup防火墙无需额外处理。

输入账号密码登陆,进入面板

通常Edge会询问是否保存密码,建议选择保存以使用自动填充

到这里,面板的部署环节已经全部完成。

面板配置

修改密码(可选)

面板设置 -> 面板 -> 修改密码

这里只是介绍如何修改,并不是必要的,实际使用默认密码已足够安全,如无必要请勿修改

重设安全入口

面板设置 -> 安全 -> 设置面板端口和安全入口

同样,这里也只是介绍如何修改,如无必要请勿修改

如果只是忘记了安全入口,可在SSH中使用命令查看

1pctl user-info

配置面板证书(HTTPS)

该章节内容为可选执行,如无较高安全性要求,使用HTTP访问无伤大雅

申请证书

如需申请证书,进入网站 -> 证书 -> 面板配置

  • HTTP解析模式无需配置DNS账户

  • DNS模式需配置账户API Key,这里以Cloudflare为例

Acme账户配置

开始申请

可以申请泛域名证书,例如 *.mfmao.de,可以覆盖blog.mfmao.de

通过面板申请的证书有自动续签功能,无需手动续期

部署证书到面板

面板设置 -> 安全 -> 面板SSL

选择“已有证书”,下拉列表中选择对应证书,确认保存

注意:需保证域名已经在域名服务商处设置了DNS解析,解析到服务器对应IP地址才能正确访问,例如演示中 *.mfmao.de已在Cloudflare解析到服务器IP,此时访问https://1panel.mfmao.de:39193/2f759cee03 可以进入面板,并且是https的加密连接

面板使用

即将演示的面板主要功能有以下几项,并且Docker管理将会与网站部署联动,演示使用域名访问容器,而不局限于IP:端口的形式

  • 文件管理

  • Docker管理

  • 网站部署/管理

  • 其他功能

文件管理

位于系统 -> 文件

可以创建/修改文件夹、文件以及修改权限等,不多赘述

Docker管理

最重要的功能,集成了Compose、网络、镜像管理等功能

1Panel对于容器Compose的管理非常友好,凡是Docker部署,都建议使用Compose,也就是这里的“编排”功能

部署演示

这里演示部署一个Speedtest,并在下一小节“网站部署”中演示如何配置使用域名访问该容器

1.配置一个自定义的bridge网络以保证容器IP固定

在SSH中设置一个Docker网络命名为mynet,使用172.20.0.1/16网段,网关为172.20.0.1(需保证172.20网段未被使用)

sudo docker network create \
  --driver bridge \
  --subnet 172.20.0.0/16 \
  --gateway 172.20.0.1 \
  mynet

2.使用Docker Compose(编排)部署容器

使用Compose部署容器可以方便重建以及更新

(如果有域名,那么建议使用bridge部署Docker不要映射端口到主机,使用Openresty反向代理通过域名访问即可)

在下一小节中,OpenResty设置speedtest.mfmao.de反代容器的IP:80(演示中为172.20.0.15:80),这样访问域名speedtest.mfmao.de即可打开Speedtest,而不必容器映射80端口到主机,且此时容器只能从域名访问,提供了较高安全性。

Compose.yaml示例内容为:

services:
  speedtest:
    image: badapple9/speedtest-x:latest
    container_name: speedtest-x
    restart: unless-stopped
    networks:
      mynet:
        ipv4_address: 172.20.0.15

networks:
  mynet:
    external: true

3.部署Compose

确认后会有日志输出,显示是否成功

4.返回“容器”菜单可以看到Docker运行状态

网站部署/管理

安装OpenResty

相当于Nginx的增强版,进入应用商店第一个就是,点击安装

会出现一个配置面板,通常默认即可,直接安装

如果你的80/443端口被占用,需另行调整,通常新安装的服务器无此问题

安装后“网站”功能将变得可用

部署网站

以反代1Panel面板为例,假设域名为speedtest.mfmao.de,已经申请好了*.mfmao.de的证书,上一小节“Docker管理”中已经部署的Speedtest容器端口为80,IP为172.20.0.15

部署后配置HTTPS

进入配置

启用HTTPS,选择对应Acme账户后再选择已经申请好的证书

完成后即可使用https加密访问,例如此时访问 https://speedtest.mfmao.de可以打开Speedtest页面。

部署静态网站或其他运行环境流程大致相同,如需使用自行配置。

其他功能

防火墙安装参考:https://1panel.cn/docs/v1/user_manual/hosts/firewall/#__tabbed_1_2

Fail2ban安装参考:https://1panel.cn/docs/v1/user_manual/toolbox/fail2ban/#__tabbed_1_2

相关说明

本文中的示例实际使用了多台服务器,并不限于Netcup服务器,但安装的系统仍然相同,无实质区别,不影响流程


Comment