在openwrt或群晖中用docker快速部署宝塔面板, 并搭建第一个网站
前期准备
已经安装好openwrt路由器或者群晖,并能内网访问。
- 如果没有安装,自行百度安装,推荐Homelede
- SSH客户端(用于安装docker和进入docker管理容器)
openwrt需要安装好docker容器管理器,群晖直接安装docker套件即可
- Homelede内置docker管理器,koolshare需要去商店安装。
- 如果没安装,参考下方步骤安装docker
# CentOS 6安装 Docker
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on
# CentOS 7、Debian、Ubuntu 安装 Docker
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
Pull拉取镜像(配置好的docker),需要完全纯净安装请看下面的纯净安装教程
docker pull pch18/baota
## 当然你也可以先pull一个ubuntu或者centos镜像,再进入docker使用宝塔官方的安装命令安装
## 比如
## docker pull ubuntu //拉取镜像
## docker run -tld --name myservice -p 8880:80 -p 8888:8888 -p 8443:443 -p 888:888 ubuntu
## 进入容器
## docker exec -it myservice bash
## 执行宝塔安装命令,等待出现用户名和密码
版本说明
pch18/baota或pch18/baota:latest等同 pch18/baota:lnmp
pch18/baota:lnmp 为最新版本的官方纯净安装的基础上安装nginx,mysql,php
pch18/baota:lnp 为官方版本纯净安装的基础上安装nginx,php(不内置mysql,用于外置数据库的环境)
pch18/baota:lamp 为官方版本纯净安装的基础上安装apache,php
pch18/baota:lap 为官方版本纯净安装的基础上安装apache,php(不内置mysql,用于外置数据库的环境)
pch18/baota:clear 为官方版本纯净安装, 不默认安装nginx,mysql,php等程序
比如,我只想安装纯净版,登入宝塔再自行安装环境,则运行docker pull pch18/baota:clear
创建容器
在大多数情况下,因为运营商封了常规的80,443端口,我们通过bridge模式运行宝塔镜像
如果特殊情况不能使用host网络模式(macos和windows不支持host), 使用下述命令重新以bridge网络模式运行
在个人家庭网线其实是不支持80端口和443端口的
这个时候我们需要稍微改一下命令里的端口映射
docker run \
-tid \
--name My_service \
-p 8280:80 \
-p 8243:443 \
-p 8888:8888 \
-p 888:888 \
--privileged=true \
--shm-size=2g \
--restart always \
-v /mnt/sda1/wwwroot:/www/wwwroot
-v /mnt/sde1/share:/share
-v /mnt/sdf1:/oliver
-v /mnt/sdc1:/oliver_backup
-v /mnt/sdd1:/oliver_download
pch18/baota:clear
其中~/wwwroot:/www/wwwroot 为映射目录, ~/wwwroot为宿主机器的/root/wwwroot目录. /www/wwwroot为容器内宝塔默认网站目录
建好的网站都必须带端口访问,或者有条件的用自己的云服务器配置nginx反代即可。
/www文件夹建议保存在volume卷中, /www/wwwroot建议映射到宿主机的目录下,方便上传网站代码等文件可选端口
-p 25:25 \ -p 110:110 \ -p 143:143 \ -p 465:465 \ -p 587:587 \ -p 993:993 \ -p 995:995 \
安装完成后以后可以随时使用内置升级,升级到最新版本
由于面板数据都保存在持久化的卷中, 即使删除容器(不删除volumn)后重新运行, 原来的面板和网站数据都能得到保留
启动容器时自动启动所有服务
登录方式
登陆地址 http://ip:8888
初始账号 username
初始密码 password
由于docker镜像的特殊性,随机密码是安装面板的时候生成的,
所有用户的随机密码其实都相同,没有随机的意义,
为了方便部署,已经去除安全入口,且设置成上述密码,
请大家登陆后第一时间修改账号密码!!
如果出现密码错误
在宿主机器输入命令
docker exec -it My_service bash
进入容器
bt
选择修改密码即可
这时候就可以愉快(苦逼)的开启建站之旅了
删除容器
docker rm -fv My_service
进入容器
docker exec -it My_service bash
创建网站
登录后台,在网站管理里添加自己的网站即可。
建好的网站请使用映射端口访问
openwrt完全纯净版安装
以ubuntu为例,先pull,拉取ubuntu镜像
pull ubuntu
创建容器
docker run \
-tid \
--name My_service \
-p 8280:80 \
-p 8243:443 \
-p 8888:8888 \
-p 888:888 \
--privileged=true \
--shm-size=2g \
--restart always \
-v /mnt/sda1/wwwroot:/www/wwwroot #挂载磁盘,请删掉此注释
ubuntu:latest
然后使用命令进入容器
docker exec -it My_service bash
接着就是正常的宝塔安装流程了
apt update
### 更新和安装必要功能
apt install curl
### 愿意安装到老版本风险的前提下执行
curl -sSO http://download.bt.cn/install/install_panel.sh && bash install_panel.sh
然后正常进入安装流程
群晖纯净安装只需要在docker注册里下载个ubuntu即可
启动容器时映射好几个主要端口,[888,8888,443,80],及挂载好存储空间就行