1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。
https://1panel.cn/
1.先决条件
- 必备:一台VPS
首先,要开一台VPS,国内外均可,目前各大厂商均有促销活动。国内腾讯、华为、阿里也推出了面向个人、爱好者和测试应用的ECS或轻量云产品,连价格都好像是提前商量的一样,都是87元/年。在2v2g3m等规格完全一样的情况下,老E就开了台不限流量、出国不会绕路的阿里ECS(轻量云产品会绕道日本),不做下载站、视频站3M带宽够用了。这里把ECS和轻量云产品都分享给大家。
-99元/年的『ECS产品』,『阿里云ECS,必买必续』
-87元/年的『轻量云产品』 页面同上『阿里云ECS销量王,必买必续』
- 可选:一个域名
建议国外VPS建站务必绑定域名,如果是国内VPS,域名需要ICP备案方可使用,否则绑定后仍然无法正常访问。需要特别提示的是,.eu.org等免费域名已被特别认证,域名托管、IP地址均在国外的情况下,很快就会被识别并屏蔽。
目前,还是阿里云在做新用户域名注册1元的活动,有兴趣的可以点『这里( .com .cn .xyz .top... 新人首单,域名低至1元)』去看一下,老E没忍住又撸了一个。
2.安装docker(可选)
特别提示:官方安装脚本docker安装没问题的请忽略此步骤
1panel官方提供的安装脚本使用了aliyun的docker镜像源,如果VPS系统采用了debian 12,当前版本安装脚本所应用的阿里镜像源docker版本存在问题(下图为所示,仅注意contaner.io版本),直接使用会导致安装失败。因此,Debian 12需要自行手动安装docker。
以下为国内几个知名docker镜像源地址,本文使用的是清华源,Debian 12可确保docker安装成功。
#清华 https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/dists/bookworm/pool/stable/amd64/ #阿里云 https://mirrors.aliyun.com/docker-ce/linux/debian/dists/bookworm/pool/stable/amd64/ #腾讯云 https://mirrors.cloud.tencent.com/docker-ce/linux/debian/dists/bookworm/pool/stable/amd64/
采用清华源安装docker的命令如下,Debian 12可直接拷贝粘贴使用。使用前应确保已使用root登录VPS。
#for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do apt-get remove $pkg; done apt-get update -y apt-get install ca-certificates curl gnupg install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg chmod a+r /etc/apt/keyrings/docker.gpg echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null apt-get update -y && apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
3.安装1panel
3.1 可选-替换源
这里以清华源为例,替换/etc/apt/sources.list文件中的内容如下,或者将以下内容添加至原文件内容之前。
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware deb https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware # deb-src https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
3.2 在线安装
拷贝、执行官方安装脚本即可,以下仅为ubuntu和debian的安装命令。
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
1panel安装很快,核心是安装docker,其整体上的简洁、轻便是依赖于docker的特性从而不对系统产生侵入性改动,整个安装最多1分钟,相比宝塔要快很多。默认安装目录为/opt下,可修改指定。安装完成后,可指定面板登录的端口号、用户名、密码、安全字符串(ip:port/后的随机字符串)4项内容,之后安装脚本会给出相应的面板内、外网登录地址链接和用户名、密码。
4.部署、配置LNMP环境
L-Linux
N-Openresty是1panel建站的核心模块,Openresty是一个基于 NGINX 和 LuaJIT 的 Web 平台。或者,可以将其理解为就是魔改的NGINX,集成Lua库,包括Lua WAF应用防火墙。
M-MySQL或其分支版本MariaDB
P-1panel应用商店支持PHP 8.2/7.4/5.6,可以以结合需要选择安装、部署相应版本的运行环境
Openresty和MySQL的安装均可在应用商店一键完成,分别点击『安装』开始安装,如一直显示『安装中』的话刷新页面即可。
安装完成Openresty和MySQL之后,创建数据库,点左侧导航区的『数据库』,在打开的页面中点击『创建数据库』,分别输入数据库名称、数据库用户名、数据库密码,这里可对随机生成的数据库密码进行修改,然后点击『确认』就会创建完成数据库。
最后安装PHP运行环境,左侧导航区点开『网站』,点选『运行环境』,在页面中点击『创建运行环境』。弹出页面中指定名称,默认可选择安装源为『应用商店』,实际就是拉取指定版本的docker镜像,选择PHP版本后,可以对镜像名称进行自定义以及选择扩展安装源,保持默认USTC即可,扩展务必添加『mysqli』,其他可自行根据需要添加,之后点击『确认』就开始创建PHP镜像并启动。
至此,LNMP环境完全安装完毕,1panel下拉取了3个镜像、创建并管理了3个容器,虽然不像宝塔那样集中地一键安装LNMP/LAMP环境,但整个安装部署过程也非常简单,只需要知道N、M、P分别指什么就一定能安装成功。同时,1panel的docker安装部署方式,各组件之间隔离运行,更为灵活。这时我们使用浏览器通过ip:port可以直接访问,会显示PHP默认的页面。
5.部署wordpress
5.1 安装wordpress
尽管1panel应用商店也提供了wordpress,但应该没有人会采用docker方式部署wordpress,毕竟大量需要频繁更新、改动的前端内容在容器里操作非常不便。1panel为我们提供了非常简便的远程下载功能,我们在wordpress官网,不用点击下载,而是拷贝其下载链接。这里,如果拷贝的是tar.gz格式压缩包的下载链接可以避免在VPS上安装zip,否则需要手动通过SSH登录VPS安装zip。
再回到1panel面板,左侧导航栏点开『网站』,在右侧的网站名称处点击我们打算安装wordpress的网站。
之后,在『网站设置』页面,选择左侧『网站目录』,点击主目录右侧的文件夹小图标,就来到了我们安装wordpress的目标目录。
在这里,我们可以远程下载刚才拷贝了下载链接的wordpress。点击『远程下载』,在弹出的页面中『下载地址』处粘贴我们拷贝的wordpress下载链接,之后路径、名称都可以修改,建议保持默认。
下载完成后,我们可以直接在1panel web页面解压,如果是.zip格式的下载链接、面板提示没有安装相应的解压缩工具,可以使用下列命令安装,注意是zip,不是unzip。解压后将解压目录下的所有文件移动至index目录下即可。
apt install zip -y
5.2 配置wordpress
安装完成后,我们可以使用http://ip:port访问网站,打开wordpress进行配置。欢迎页本文略过,wordpress需要连接数据库,在此页填写数据库名称、用户名、密码,因为我们采用docker安装了MySQL,数据库主机应填写mysql(默认的容器名称),表前缀可自定义或保持默认都可以。填写完毕后点击『提交』。
接下来需要填写一些必要的信息,如站点标题、wordpress管理后台的用户名、密码和电子邮箱等,完成之后点击『安装wordpress』,wordpress会创建网站配置文件。
至此,wordpress部署完成,使用http://ip:port即可访问网站,http://ip:port/wp_admin访问网站后台进行管理。有关wordpress的教程或配置内容可自行搜索查询相关资料。
6.其他
1pannel的其他配置在视频分享中均有涉及,后续另文发布。总体来看,老E认为1panel不输于宝塔,但易用性上还可以进一步提高,对于新手而言更加适用1键lnmp/lamp,而不是各自独立安装配置。同时,虽说是依托于docker,但这个内存占用恐怕还有很大的优化空间,不然小伙伴们手里1v1g的弱鸡没法愉快的玩耍。
文章评论
谢谢,很好的方法,但是在添加新模板时出现ftp主机名、用户名、密码要填写,应该怎么操作,尝试过很多方法没有解决。
@jason 后面的文章就是解决这些问题的 默认1panel是容器运行 所以权限上有问题 属主要改成1000就行
补充一下,咱在尝试的时候发现这套直接走网页会打不开,搞了半天发现是文件夹权限问题。
@kiFte 是啊 所以专门有写了篇说的 1000用户是1panel openresty的 属主改下就行
请问有没有1panel迁移到新IP的教程呢?因为换服务器了
@Eric 1panel迁移?首先把自己的需求理清楚,再从社区找答案