让你的 MacBook 系统更加纯净,docker 版宝塔面板值得你拥有!

本贴最后更新于 1411 天前,其中的信息可能已经水流花落

使用 Mac 系统的程序员同学们,我想你们都有一样的困扰,那就是每次开发一些新东西的时候,就得编译安装一些软件一些包,久而久之导致 Mac 系统一堆垃圾冗余文件,还不知道怎么删除、卸载!docker 是一个很好的选择,环境在容器,用完不用了可以随时丢弃!若长时间用,也可以永久容器保留!好了今天的话题引出来了!
专门为开发服务端(主要 php 端吧)同学准备 docker-宝塔面板!一键创建完整开发环境!完美保护你 Mac 本机系统!
不用考虑直接上车吧!
gitee:https://gitee.com/ikmui/docker-bt
记得给个收藏!给个赞啊!

快速使用安装命令

git clone https://gitee.com/ikmui/docker-bt.git ./bt
cd bt
cp .env-example .env
compose up -d app && docker exec -it app /bin/bash
//访问http://127.0.0.1:8887
//输入你在配置文件里配置的用户名密码即可
//停止
docker-compose stop app
//删除
docker-compose down --volumes

后面是详细介绍 ~~~ 可以不看 ~~~

docker-宝塔

docker 下运行宝塔面板,实现本地完全隔离的开发环境!该脚本可以实现一键安装!
安装完成后,登录宝塔面板后台进行所需环境安装即可直接使用啦!
宝塔面板升级等一些列操作和 Linux 虚拟机上面安装一模一样。

  • 镜像默认使用 Centos7 基础镜像,使用 Dockerfile 构建
  • 该脚本每次 build 都会保留之前信息,当然如果你删除了卷那没办法。。。配置文件里可以配置默认用户名和密码
  • 安装时间视网络环境而定,建议更换 Docker 的国内源
  • 配置文件 .env 中都有详细的注释
  • 使用 volume 作持久化存储,数据卷名为 bt_www bt_usr bt_etc

如何使用

建议使用 Liunx 或者 MAC 部署,windows 用户想来是用不到这个

1. 安装 git,或者直接下载 zip 也可以

sudo yum install -y git

2. 到你想生成项目的文件夹下执行命令

git clone https://gitee.com/ikmui/docker-bt.git ./bt

3. 进入项目根目录

cd bt

4. 生成配置文件

cp .env-example .env

5. 启动宝塔镜像,在项目根目录下执行命令

docker-compose up -d app
或者 启动并进入 ssh(日常开发,往往需要 ssh 操作)
docker-compose up -d app && docker exec -it app /bin/bash

6. 查看默认登录信息

docker-compose logs app
也可以不用看,因为配置文件默认配置好了用户名和密码

如何进行数据备份和迁移

1. 首先正常部署成功后,将需要的应用程序和配置安装和设置完毕

2. 启动并进入 app_backup 容器,注意:接下来的操作都是在该容器下的交互命令下执行

docekr-compose stop
docekr-compose up -d app_backup
docekr-compose exec app_backup sh

3.1 备份

执行成功后会在宿主机项目目录下的 app_backup/export 目录下生成 baota_backup_*.tar.gz 的数据包

sh /app_backup/export.sh

3.2 迁移

将数据包放在 app_backup/export 目录下,然后执行,根据提示操作即可

sh /app_backup/import.sh

其他说明

目录结构

  • app
    • app.sh 宝塔镜像启动脚本
    • Dockerfile
  • app_backup
    • app_backup 宝塔数据备份迁移脚本
    • Dockerfile
    • export.sh 导出脚本
    • import.sh 导入脚本
  • backup .env 可配置,默认为宝塔备份目录
  • wwwlogs .env 可配置,默认为宝塔日志目录
  • wwwroot .env 可配置,默认为宝塔网站目录,请把你的网站放在此目录下

.env 配置说明

这里可以自定义端口和目录,请酌情设置,默认也可
没加入 cron 路径,因为测试发现用不了
另外没有实现运行到/usr/sbin/init 下面,所以计划任务不能自动执行

# 宝塔安装地址URL
BT_INSTALL_PATH=http://download.bt.cn/install/install_6.0.sh

# 面板账户
BT_USERNAME=baota
BT_PASSWORD=123456
# DNS
DNS1=8.8.8.8 
DNS2=114.114.114.114

# Driver
VOLUMES_DRIVER=local
# bridge / host
NETWORKS_DRIVER=bridge

# Centos 版本
CENTOS_VERSION=7

# PORT 开放端口
# 面板端口
BT_PORT=8887
# 网站默认端口
WEB_PORT=80
# HTTPS 端口
HTTPS_PORT=443
# FTP 端口
FTP_PORT=21
# FTP 数据传输端口
FTP_DATA_PORT=20
# SSH 端口
SSH_PORT=22000
# MYSQL 端口
MYSQL_PORT=3306
# PhpMyAdmin 端口
PHPMYADMIN_PORT=888
# redis 端口
REDIS_PORT=6379
# memcached 端口
MEMCACHED_PORT=11211

#XDEBUG
XDEBUG_PORT = 9003

# PATH 路径
# 网站默认路径
WEB_PATH=./wwwroot
# 日志
LOGS_PATH=./wwwlogs
# 数据库相关存储路径
DATA_PATH=./data
# 宝塔备份
BACKUP_PATH=./backup

常用命令

# 构建容器
docker-compose build
# 不缓存构建,执行后默认登录信息会变化
docker-compose build --no-cache
# 查看运行情况
docker-compose ps
# 启动宝塔镜像
docker-compose up -d app
# 启动宝塔镜像并进入命令行
docker-compose up -d app && docker exec -it app /bin/bash
# 启动宝塔数据备份迁移系统
docker-compose up -d app_backup
# 启动所有
docker-compose up -d
# 停止运行
docker-compose stop app
# 删除容器和数据卷
docker-compose down --volumes
# 列出全部的数据卷
docker volume ls
# 删除指定的多个数据卷
docker volume rm volume_name volume_name

鸣谢

大家有好的修改建议或者问题,欢迎留言,我会及时回复问题和采纳建议!另外也期望能有高手能搞出完美的/usr/sbin/init 模式下运行方案

  • 宝塔

    天王盖地虎,宝塔镇河妖。

    26 引用 • 76 回帖
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    490 引用 • 915 回帖 • 1 关注
1 操作
ieras 在 2020-12-19 21:58:39 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • ieras
    作者

    @88250 老大!咱们官方版的 pipe 博客访问速度极慢哦!而且有时候访问不了!感觉仿佛被国内网络屏蔽了一样!能否解决一下这个问题哦!

    1 回复
  • 88250

    建议自己搭……

    1 回复
  • ieras
    作者

    trollface trollface trollface 好建议