Loading... **在openwrt或群晖中用docker快速部署宝塔面板, 并搭建第一个网站** ### 前期准备 * 已经安装好openwrt路由器或者群晖,并能内网访问。 * 如果没有安装,自行百度安装,推荐[Homelede](https://github.com/xiaoqingfengATGH/HomeLede) * SSH客户端(用于安装docker和进入docker管理容器) * openwrt需要安装好docker容器管理器,群晖直接安装docker套件即可 * Homelede内置docker管理器,koolshare需要去商店安装。 * 如果没安装,参考下方步骤安装docker ```shell # 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 ``` ```shell # CentOS 7、Debian、Ubuntu 安装 Docker curl -sSL https://get.docker.com/ | sh systemctl start docker systemctl enable docker ``` ### Pull拉取镜像(配置好的docker),需要完全纯净安装请看下面的纯净安装教程 <div class="tip inlineBlock warning"> 拉取前,先看下版本说明 </div> ```shell 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端口的 这个时候我们需要稍微改一下命令里的端口映射 ```shell 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 选择修改密码即可 这时候就可以愉快(苦逼)的开启建站之旅了 ### 删除容器 ```shell docker rm -fv My_service ``` ### 进入容器 ```shell docker exec -it My_service bash ``` ### 创建网站 登录后台,在网站管理里添加自己的网站即可。 建好的网站请使用映射端口访问 > <div class="preview"> <div class="post-inser post box-shadow-wrap-normal"> <a href="https://www.silencetime.com/index.php/archives/60/" target="_blank" class="post_inser_a no-external-link no-underline-link"> <div class="inner-image bg" style="background-image: url(https://www.silencetime.com/usr/themes/handsome/assets/img/sj/1.jpg);background-size: cover;"></div> <div class="inner-content" > <p class="inser-title">Docker中容器的备份、恢复和迁移</p> <div class="inster-summary text-muted"> 备份容器首先,为了备份Docker中的容器,我们会想看看我们想要备份的容器列表。要达成该目的,我们需要在我们运行着... </div> </div> </a> <!-- .inner-content #####--> </div> <!-- .post-inser ####--> </div> ### openwrt完全纯净版安装 以ubuntu为例,先pull,拉取ubuntu镜像 ```shell pull ubuntu ``` ##### 创建容器 ```shell 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 ``` 然后使用命令进入容器 ```shell docker exec -it My_service bash ``` 接着就是正常的宝塔安装流程了 ```shell 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],及挂载好存储空间就行 最后修改:2022 年 09 月 08 日 © 允许规范转载 打赏 赞赏作者 支付宝 赞 0 如果觉得我的文章对你有用,请随意赞赏