以下为长文,包含安装docker+centos+宝塔+80端口访问+自动同步,分享自己的折腾之路,全文我的nas地址是192.168.1.7,同时我通过DNS Server套件将dev.com解析到了nas上。

Docker

安装

在套件中心搜索Docker并安装
在这里插入图片描述

注册表设置

在这里插入图片描述
在这里插入图片描述
在注册表镜像URL填写https://rr05efme.mirror.aliyuncs.com
在这里插入图片描述

选择centos

双击centos
在这里插入图片描述
选择latest
在这里插入图片描述
在映像里查看是否安装完成
在这里插入图片描述

安装centos

新建网站和备份目录

打开file station在docker下新建backup和wwwroot文件夹,用于后期挂载到docker上
在这里插入图片描述

创建容器

在docker-映像中选择centos并启动
在这里插入图片描述
在这里插入图片描述
进入高级设置,启用自动重新启动
在这里插入图片描述
在卷中添加文件夹
在这里插入图片描述
在端口设置中添加以下端口,由于群晖占用了80等端口,因此需要转发docker的端口,包括21 22 80 443 888 8888,我的做法是直接把端口号+10000,实际情况8888和888端口不用修改,而在内网也不需要443端口
在这里插入图片描述
应用以后点击下一步
在这里插入图片描述
接着应用
在这里插入图片描述

设置docker的ssh的密码

我安装ssh的目的是为了使用本地的mysql客户端,如果不需要可忽略这几步
双击centos1,进入详情
在这里插入图片描述
进入终端机
在这里插入图片描述
安装passwd openssl openssh-server

yum install passwd openssl openssh-server -y

在这里插入图片描述
启动sshd

/usr/sbin/sshd -D

这个时候会出现以下的错误,提示文件不存在

Unable to load host key: /etc/ssh/ssh_host_rsa_key                              
Unable to load host key: /etc/ssh/ssh_host_ecdsa_key                            
Unable to load host key: /etc/ssh/ssh_host_ed25519_key                          
sshd: no hostkeys available -- exiting.

在这里插入图片描述
执行以下命令

ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''  
ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N '' 
sed -i "s/#UsePrivilegeSeparation.*/UsePrivilegeSeparation no/g" /etc/ssh/sshd_config
sed -i "s/UsePAM.*/UsePAM no/g" /etc/ssh/sshd_config

重新启动sshd

/usr/sbin/sshd -D

修改密码

passwd

输入两遍密码
在这里插入图片描述

用ssh工具测试一下连接是否正常

主机地址是你的nas地址192.168.1.7,端口是前面设置的22端口转发的10022,用户名为root,苗木是刚刚设置的
在这里插入图片描述
如果连接失败,重新启动下sshd就行

安装宝塔面板

在ssh工具上执行,当然也可以在docker的终端中运行

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

安装过程中只需要输入一次y即可(顺便安利下基于java开发好用的finalshell)
在这里插入图片描述
安装成功后保存下面板信息,访问你的nas地址:18888即可,如192.68.1.7:18888
在这里插入图片描述
在面板设置中默认建站目录、默认备份目录与之前挂载的目录相对应
在这里插入图片描述

到此宝塔的安装完成了,宝塔下的环境比如lnmp或者lamp我就不说

注意事项

docker启动的时候宝塔可能需要手动启动,具体表现为访问失败,此时在shell中运行bt,选择启动或重启宝塔面板即可
宝塔的数据库管理地址不是888了而是10888

设置自动同步

在群晖上安装服务端

在套件中心安装Synology Drive Server
在这里插入图片描述
设置团队文件夹,选择docker并启用
在这里插入图片描述

在本机安装客户端

https://www.synology.cn/zh-cn/support/download/DS220j#utilities
在这里插入图片描述
地址为nas地址,用户名和密码为nas管理面板的用户名和密码,同时内网需要取消ssl数据传输加密
在这里插入图片描述
选择服务器文件夹,新装的客户端默认会选中一个文件夹,我这边因为已经装过了所以是留空的
在这里插入图片描述
选择wwwroot文件夹
在这里插入图片描述
修改本地文件夹目录
在这里插入图片描述
进入高级设置
勾选的目的是会有.env,.htaccess之类的文件,网站开发你懂得
在这里插入图片描述
在这里插入图片描述

新建站点

80端口转发

由于80端口被群晖占用了,需要手动设置
在这里插入图片描述
进入控制面板-应用程序门户,选择反向代理服务器
在这里插入图片描述
新增规则
在这里插入图片描述
由于dev.com域名已经被我通过DNS Server解析到本地了,因此我这边可以直接写,你自己可以通过比如dnspod将对应的域名解析到你的nas服务器,如果是https则填写来源端口为443。
目的地端口主机名填写localhost,端口为10080。
设置之后就可以通过dz.dev.com直接访问了,无需加端口号即可访问,经历的过程是你访问的时候80端口群晖转发至10080,群晖内的docker又将10080转发到docker内的80
在这里插入图片描述
也有人说通过网络中的路由器设置也可以实现这个功能,由于我的群晖是直接连到交换机上的,没有上级路由器因此无法使用这个功能
每个域名都需要在此进行设置,同时你也可在此设置宝塔的8888和888端口,当然8888和888端口群晖并没有占用,你可以默认启用

在宝塔中新建站点

在这里插入图片描述
再次访问dz.dev.com,发现已经可以正常访问了
在这里插入图片描述

同步文件

在本地的网站目录文件夹(我的是D:/wwwroot)你会发现宝塔中新建站点生成的默认的文件怎么没有被同步下来,而在本机上传的文件在多端都是会自动同步的
在这里插入图片描述
其实是用户组权限的问题,由于我也是刚刚接触,虽然我折腾出来的下面的手动的办法是肯定可以的,但是有更好的办法也欢迎大家留言,其实是宝塔创建的目录权限所属宝塔的用户
右键文件夹、属性
在这里插入图片描述
拥有者选择为你自己,然后应用到打勾
在这里插入图片描述
然后发现本地同步下来了
在这里插入图片描述

然后在本地新建一个a.txt,同步客户端提示上传成功

群晖上有了这个文件
访问dz.dev.com/a.txt也成功了,没有提示404
在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐