返回顶部
热门问答 更多热门问答
技术文章 更多技术文章

群晖快速搭建宝塔lnmp环境

[复制链接]
游侠 显示全部楼层 发表于 2022-8-23 10:40:07 |阅读模式 打印 上一主题 下一主题

登录网站,浏览更多精彩内容

您需要 登录 才可以下载或查看,没有账号?加入我们

x
1、前言
有些时候我们需要在自己的群晖里搭建小网站,比如做个小导航什么的,用群晖自带的web station就够用了,但是有时候需要搭建复杂点的网站,这个时候群晖自带的环境就不太舒服了,所以我们可以通过docker来自己搭建一个宝塔lnmp环境,下面为操作步骤
步骤都是自己操作后整理的,只要按照教程来做,就没问题

2、整体思路和流程
群晖安装docker环境
docker里直接搭建宝塔环境
3、具体操作
1、安装docker,并添加国内阿里云镜像加速
群晖里,选择套件中心,然后在里面搜索docker,然后安装即可。
————————————————
20220823_102805_000.jpg
接着按照下图指示,依次点击:
注册表——>设置——>选中Docker Hub——>编辑
20220823_102805_001.jpg
然后勾选上启用注册表镜像,输入https://rr05efme.mirror.aliyuncs.com,点击确定
20220823_102805_002.jpg
(这一步目前来看也可以省略国内速度也不差)
解释下这部的操作目的,docker hub默认是在国外,如果我们下载docker里的镜像,就需要从国外的服务器里下载,速度就很慢。所以我们添加了一个阿里云的镜像地址,这样我们以后下载docker里的镜像,就是从国内下载的了,就很快啦!

声明:这个地址是我个人的阿里云加速地址,最好你自己去找阿里云申请一个,具体可以百度!

2、安装宝塔镜像
宝塔的安装我们可以有2个方案:
我们自己直接从官方达宝塔镜像里拉取,然后自己再在后台里手动安装lnmp环境。
用别人做好的宝塔镜像来搭建环境。
实测结果,第一种方法,安装速度很慢,尤其是后面安装nginx等环境的时候,一不小心20分钟都有可能,而第二种方法比较快,其次这个现成的宝塔环境是用dockerfile自动生成的,安全性有保障,所以我们这里就用第二个方法来安装啦!
20220823_102805_003.jpg
搜索baota,然后双击,选择latest即可
20220823_102805_004.jpg
附上版本说明:
20220823_102805_005.jpg
安装好了镜像如下图:
20220823_102805_006.jpg
(不要觉得它很大,下载的时候其实是1.6,安装之后才是6G的,如果你自己手动安装宝塔加这些环境,也是这么大的,所以不用担心!)
(下载比较慢很正常,毕竟1.6GB的文件,其次docker镜像是个层级结构,速度是忽高忽低,所以多等会就行了,下载到1.7G左右的时候,它就不动了,不是卡死了!别把它给删了,它是在安装,安装好了就是6G了)
3、设置权限
在启动容器之前,我们可以先新建一个目录,后面容器启动好把网站挂载过来,方便我们修改网站,而默认的lnmp数据,我们直接放到docker的volume里就行了,反正不用手动改东西(不懂没关系,往下看就行了)
20220823_102805_007.jpg

在docker里,创建一个wwwroot,这个路径不要错,后面要用得到,如果你不是和我一样的路径,那么后面你自己看着修改!

然后我们需要给docker权限,不然它没法写入数据

20220823_102805_008.jpg

20220823_102805_009.jpg

20220823_102805_010.jpg

20220823_102805_011.jpg

如图所示之后,我们点击确定!

4、启动镜像

我们首先打开群晖的终端,用root权限来操作镜像的启动

20220823_102805_012.jpg

然后我们用putty来连接群晖的终端,如果你没有这个软件,就百度自己下载一个

打开之后,输入我们群晖的IP,端口输入22(默认),选择SSH,点击Open就行了。

如果你是在外网访问的话,还需要给路由添加一个外网映射的端口22,然后IP那里,填你的DDNS地址,或者你家公网IP也行的

20220823_102805_013.jpg

输入我们的群晖账号(就是你登陆的用户名),按回车

20220823_102805_014.jpg

接着输入我们的群晖登陆密码(这个地方输入密码是看不见的,盲打输入就行了),按回车,出现下图,就说明登陆成功。

接着我们输入 sudo -i,回车,接着再输入一次我们的登陆密码,回车

20220823_102805_015.jpg

如果是如下图一样,前面是root开头的,就说明OK啦!

20220823_102805_016.jpg

输入docker images,如果出现下图显示的名字,就是说明OK

11.png

然后接着我们输入下面的内容,手打比较累,我们把下面全部复制,然后切到终端界面,按一下鼠标反键,就粘贴上去了。接着按回车

  1. docker run -tid --name baota \
  2. -p 10080:80 -p 10443:443 -p 18888:8888 -p 10888:888 \
  3. -p 10020:20 -p 10021:21 \
  4. --privileged=true --shm-size=1g \
  5. --restart always \
  6. -v /volume1/docker/wwwroot:/www/wwwroot \
  7. -v baota_www:/www \
  8. pch18/baota
复制代码

出现了下面这样的提示,就说明是创建成功了

20220823_102805_017.jpg

小提示:如果是第一回安装的话,会很慢!因为它要安装一些环境等等,反正等着就完事!以后安装都是秒安了!

最后我们在浏览器里输入群晖的IP+18888端口,就可以访问了。如下图

20220823_102805_018.jpg

如果是外网访问,就输入DDNS+18888端口就可以了(记得路由器里端口映射一下哦)

默认的账号:username
默认的密码:password

登陆进去之后,可以自己修改

但是第一次需要在docker修改宝塔界面的登录账号密码(因为给的登录密码第一次登录不正确)

1.png

4、补充说明

1、端口说明

首先说明一下关于宝塔端口的问题,

默认是80、443、20、21、888、8888

而我操作的时候,都修改成了10080、10443、10020、10021、10888、18888

之所以这样做,是为了防止其它的端口发生冲突,你也可以自己修改这些端口!

2、数据保存问题

关于数据库和站点的储存说明:

数据库mysql默认是在docker的volume数据卷的baota_www文件夹里,这个卷在群晖的界面里是隐藏的,所以你是看不到的,但是我们哪怕删除容器,这个数据卷也是存在的,所以不用担心丢失,下次我们继续-v挂载就行

(但是!如果卸载了docker,那这个数据卷就会被删除了,所以docker卸载慎重,记得提前备份!)

网站的站点目录,是储存我们之前手动新建的文件夹wwwroot里,同样不会自动删除的,放心用!

3、后面操作

后面不论是 停用/删除/重新新建 baota容器,只用重新输入下面就可以了,速度很快!

  1. docker run -tid --name baota \
  2. -p 10080:80 -p 10443:443 -p 18888:8888 -p 10888:888 \
  3. -p 10020:20 -p 10021:21 \
  4. --privileged=true --shm-size=1g \
  5. --restart always \
  6. -v /volume1/docker/wwwroot:/www/wwwroot \
  7. -v baota_www:/www \
  8. pch18/baota
复制代码

最后附上docker的一些常用操作指令(需要的时候用就行了,不要乱尝试!!否则会把数据删了!)

  1. # 搜索镜像
  2. docker search 搜索名
  3. # 下载镜像
  4. docker pull 镜像名(:tag标签,默认latest)

  5. # 查询docker所有镜像列表
  6. docker images
  7. # 查询docker运行中的容器列表
  8. docker ps
  9. # 查询docker所有容器列表(包括停止的)
  10. docker ps -a

  11. # 强制删除容器
  12. docker rm -f 容器名 或 容器id
  13. # 强制删除镜像
  14. docker rmi -f 镜像名 或 镜像id

  15. # 查询容器元信息
  16. docker inspect 容器名
  17. # 查询镜像元信息
  18. docker inspect 镜像名

  19. # 创建容器
  20. docker run 参数 镜像名 或 镜像id
  21. # 启动容器
  22. docker start 容器名 或 容器id
  23. # 停止容器
  24. docker stop 容器名 或 容器id

  25. # 重启docker容器(群晖里的docker操作和centos有点不太相同)
  26. synoservice --restart pkgctl-Docker # 群晖
  27. systemctrl restart docker # centos

  28. # 列出所有服务
  29. synoservicecfg --list
复制代码
docker如果需要更深入的了解,还是多看下docker的教程吧。


中国领先的数字技术资源交流中心!

精彩评论1

北极孤星的泪 显示全部楼层 发表于 2022-9-14 09:23:16

  1. docker pull baiyuetribe/baota_mini
复制代码



要注意 一个问题就是宝塔域名端口必须保持内网端口,不能改为外网映射的端口改了会导致访问不了!
捕获.PNG
商乾电商学院,中国最大的电商资源交流基地!
商乾全球电商人、电商交流学习与电商实战技术分享、电商爬虫、生活交流专业网站
  • 官方手机版

  • 微信公众号

  • 商务合作