在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:dnmp开源软件地址:https://gitee.com/Tinywan/dnmp开源软件介绍:目录
Docker简介Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 为什么使用Docker
环境要求快速使用拉取代码 (gitee地址) $ git clone git@github.com:Tinywan/dnmp.git$ cd dnmp 新建配置文件 $ cp env.example .env 开启容器服务 $ docker-compose up
单独重启容器服务 $ docker-compose up --no-deps -d nginx -- php74
结束 如何清理您的Docker数据Docker不会对您的系统进行任何配置更改,但是它会占用大量的磁盘空间 1. 使用情况统计信息$ docker system dfTYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 25 13 9.467GB 4.368GB (46%)Containers 13 8 235MB 19.47MB (8%) Local Volumes 14 2 6.45GB 5.869GB (90%)Build Cache 0 0 0B 0B 2. 定期修剪为了安全地删除已停止的容器,未使用的网络和悬挂的图像,最好每隔一段时间运行以下命令 $ docker system pruneWARNING! This will remove: - all stopped containers - all networks not used by at least one container - all dangling images - all dangling build cacheAre you sure you want to continue? [y/N] yDeleted Containers:5096cc97946c148450214a4330e35a67035289ecacc2806e9f693a0d46ebe75e 3. 全面清理启动可以使用单个命令擦除每个未使用的容器,图像,卷和网络 $ docker system prune -a --volumesWARNING! This will remove: - all stopped containers - all networks not used by at least one container - all volumes not used by at least one container - all images without at least one container associated to them - all build cacheAre you sure you want to continue? [y/N] yDeleted Volumes:d8827bb292a529057fc972acb982a6f13b6608ed10132b9e9a689959cafec30e...Deleted Images:untagged: dnmp_php72:latestdeleted: sha256:1b29834e4f9054d78a0d5e91e114e40b865ad8ddce06a3c7ba3703f9911775e6Total reclaimed space: 12.71GB 4. 使用情况项目结构 dnmp ├── docker-compose.yml -- 基础配置文件 ├── env.example -- 环境配置文件,拷贝 env.example 为 .env ├── services -- 服务目录 │ ├── php │ │ └── extensions -- 扩展目录 │ │ └── Dockerfile -- 镜像构建文件 │ ├── nacos │ │ └── conf -- 配置文件目录 │ │ └── env -- 环境变量目录 │ │ └── Dockerfile -- 镜像构建文件(构建比较耗时,不推荐) ├── conf │ ├── nginx.conf -- Nginx 主配置文件 │ ├── conf.d │ │ └── 80.conf -- HTTP 80 虚拟主机扩展配置文件 │ │ └── 443.conf -- HTTPS 虚拟主机扩展配置文件 │ │ └── lua.conf -- Lua 配置虚拟主机扩展配置文件 │ ├── letsencrypt -- Nginx 证书目录 │ ├── mysql │ │ └── my.cnf -- MySQL 配置文件 │ ├── etcd │ │ └── etcd.conf.yml -- Etcd 配置文件 │ ├── redis │ │ └── redis.conf -- Redis 配置文件 │ ├── php │ │ ├── php.ini -- PHP 运行核心配置文件 │ │ ├── php-fpm.conf -- PHP-FPM 进程服务的配置文件 │ │ └── php-fpm.d │ │ └── www.conf -- PHP-FPM 扩展配置文件 │ └──lua -- Lua 脚本目录 │ └── bin │ │ └── limit.lua -- 核心库脚本 │ └── test │ └── http.lua -- 测试脚本 ├── data -- 数据目录 │ ├── redis │ │ ├── appendonly.aof -- AOF 数据库保存文件 │ │ ├── dump.rdb -- RDB 数据库保存文件 │ │ └── redis.log -- Redis 日志文件 │ └── mysql -- MySQL 数据目录 ├── log ├ ├── nginx -- Nginx 系统错误日志 │ │ ├── access.log │ │ └── error.log │ └──redis -- Redis错误日志 │ └──nacos -- Nacos错误日志 │ └──php -- PHP错误日志 └── www -- 项目代码目录 └── site -- 具体项目目录 └──index.php Nginx管理
MySQL管理
PHP管理
Redis管理
Composer管理使用Docker安装Linux环境进入项目目录,执行以下命令安装 docker run --rm --interactive --tty --volume $PWD:/app --user $(id -u):$(id -g) composer install --ignore-platform-reqs
Windows环境安装一个新的 composer 包 E:\dnmp> docker run --rm --interactive --tty -v e:/dnmp/www/thinkphp_3.2:/app composer require tinywan/load-balancing --ignore-platform-reqs
执行执行项目的绝对路径 E:\dnmp> docker run --rm --interactive --tty -v e:/dnmp/www/tp6:/app composer install --ignore-platform-reqs
容器内
宿主机建议在主机 HOST 中使用 composer,避免 PHP 容器变得庞大,Docker Official Images
Crontab管理执行方案
宿主机执行任务(推荐)# 2019年2月14日 @add Tinywan 获取图表数据 每3分钟执行一次*/30 * * * * docker exec dnmp-php echo " Hi Lnmp " >> /var/www/crontab.log
容器内执行任务
配置任务调度器 scheduler将下面内容添加到 crontab 计划任务中: * * * * * /usr/local/bin/php /var/www/www.tinywan.com/scheduler.php 1>> /dev/null 2>&1
WebSocket管理在项目中难免会用到 workerman
|
请发表评论