记录我的一些生活写照、无聊的牢骚、内心世界的活动 注册 | 登陆

制作基于Debian的宝塔Docker镜像

制作基于Debian的宝塔Docker镜像

作者Docker镜像:https://hub.docker.com/r/xiwangly/baota
容器基础环境搭建:
XML/HTML代码
  1. #拉取Debian镜像
  2. docker pull debian
  3. #运行Debian
  4. docker run -itd --privileged=true --shm-size=1g --name=baota --net=host --restart=always -v /www/wwwroot:/www/wwwroot debian
  5. #进入容器内部
  6. docker exec -it baota /bin/bash
  7. #替换镜像源(有良好的国际互联网连接则可以不用)&更新源
  8. sed -i 's/deb.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list && apt-get update
  9. #设置临时环境变量,用于静态交互
  10. export DEBIAN_FRONTEND=noninteractive
  11. #安装软件包,如果不使用curl安装宝塔面板则可以不安装curl,wget同理,其它的软件包真的用不到也可以不安装
  12. apt-get install -y init procps wget iproute2
  13. //apt-get install -y curl
安装宝塔面板(命令二选一):
宝塔开心版出自:https://bt.sy/   宝塔官网:https://www.bt.cn/
XML/HTML代码
  1. #试验性Centos/Ubuntu/Debian安装命令 独立运行环境(py3.7)可能存在少量兼容性问题
  2. curl -sSO http://io.bt.sy/install/install_panel.sh && bash install_panel.sh
  3. #Debian安装命令:
  4. wget -O install.sh http://io.bt.sy/install/install-ubuntu_6.0.sh && bash install.sh
官方安装脚本:
XML/HTML代码
  1. wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
询问是否安装,回复y继续,中途可能会遇到报错,自行解决。
安装完成后,输入bt可查看命令,如果输入了这个就直接交互数字就行了。
XML/HTML代码
  1. ===============宝塔面板命令行==================  
  2. (1) 重启面板服务           (8) 改面板端口  
  3. (2) 停止面板服务           (9) 清除面板缓存  
  4. (3) 启动面板服务           (10) 清除登录限制  
  5. (4) 重载面板服务           (11) 取消入口限制  
  6. (5) 修改面板密码           (12) 取消域名绑定限制  
  7. (6) 修改面板用户名         (13) 取消IP访问限制  
  8. (7) 强制修改MySQL密码      (14) 查看面板默认信息  
  9. (22) 显示面板错误日志      (15) 清理系统垃圾  
  10. (23) 关闭BasicAuth认证     (16) 修复面板(检查错误并更新面板文件到最新版)  
  11. (24) 关闭动态口令认证          (17) 设置日志切割是否压缩  
  12. (25) 设置是否保存文件历史副本  (18) 设置是否自动备份面板  
  13. (0) 取消                   (29) 取消访问设置验证  
  14. ===============================================  
  15. 请输入命令编号:  
  16. ===============================================  
输入bt 11取消入口限制,输入bt 6修改面板用户名,输入bt 5修改面板密码,然后按照提示浏览器登录宝塔即可。
高级设置:
输入前面设置的账号密码登录(如果没有重设账号密码就按照安装后提示的账号密码登录)
阅读《用户协议》并确认,进入面板(可以先不用安装推荐的选项)
按照自己的需要自定义设置
本地测试可以把面板设置里的IP地址改成0.0.0.0
如果需要IPV6则可以在面板设置里打开监听IPv6开关
退出容器内部
exit
然后提交成本地镜像
docker commit baota xiwangly/baota:latest
导出镜像到文件(可选)
docker save -o xiwangly-baota.tar xiwangly/baota:latest
登录Docker Hub
docker login
//输入账号密码登录
推送到Docker Hub
docker push xiwangly/baota:latest
以上操作可以整合修改为Dockerfile一键构建镜像,使用下面的Dockerfile自动化构建(安装用的URL自己找):
XML/HTML代码
  1. FROM debian
  2.  
  3. RUN /bin/bash -c '\
  4. sed -i "s/deb.debian.org/mirrors.ustc.edu.cn/g" /etc/apt/sources.list;\
  5. apt-get update;\
  6. export DEBIAN_FRONTEND=noninteractive;\
  7. apt-get install -y init procps wget iproute2;\
  8. export go=y;\
  9. wget -O install.sh http://xxx.com/install/install-ubuntu_6.0.sh && bash install.sh -y;\
  10. export go=;\
  11. export DEBIAN_FRONTEND=;\
  12. bt 11;\
  13. echo 123456 | bt 5 123456;'
之后要用就可以从Docker Hub拉取镜像
docker pull xiwangly/baota:latest
或者从导出的镜像文件导入(可选)
docker load -i xiwangly-baota.tar
之后就可以删除这个容器
docker rm -f baota
再run,使用init进行初始化(也就是让服务开机自启)
Linux系统用这个命令运行
XML/HTML代码
  1. docker run -itd --privileged=true --shm-size=1g --name=baota --net=host --restart=always -v /www/wwwroot:/www/wwwroot xiwangly/baota /sbin/init
Windows系统用这个命令运行,存在一些兼容性问题,建议使用Linux系统运行容器
XML/HTML代码
  1. docker run -itd --name=baota -p 80:80 -p 443:443 -p 8888:8888 -p 888:888 -p 3306:3306 -p 21:21 -p 22:22 --privileged=true --shm-size=1g --restart=always -v /www/wwwroot:/www/wwwroot xiwangly/baota /sbin/init
根据实际需要更改这个docker run命令的参数
进入容器,之后怎么用就看自己了
docker exec -it baota /bin/bash
退出容器
exit
删除容器
docker rm -f baota
删除镜像
docker rmi xiwangly/baota:latest

« 上一篇 | 下一篇 »

发表评论

评论内容 (必填):