使用Dockerfile创建一个hyperf容器做为开发环境

news/2026/1/18 19:21:04/文章来源:https://www.cnblogs.com/fps2tao/p/19498963

使用Dockerfile创建一个hyperf容器做为开发环境

# Default Dockerfile
#
# @link     https://www.hyperf.io
# @document https://hyperf.wiki
# @contact  group@hyperf.io
# @license  https://github.com/hyperf/hyperf/blob/master/LICENSE

FROM hyperf/hyperf:8.3-alpine-v3.19-swooleLABEL maintainer="Hyperf Developers <group@hyperf.io>" version="1.0" license="MIT" app.name="Hyperf"##
# ---------- env settings ----------
##
# --build-arg timezone=Asia/Shanghai
ARG timezone# 修复 SCAN_CACHEABLE 变量格式,移除多余括号
ENV TIMEZONE=${timezone:-"Asia/Shanghai"} \APP_ENV=prod \SCAN_CACHEABLE=true# update
RUN set -ex \# show php version and extensions&& php -v \&& php -m \&& php --ri swoole \#  ---------- some config ----------&& cd /etc/php* \# - config PHP&& { \echo "upload_max_filesize=128M"; \echo "post_max_size=128M"; \echo "memory_limit=1G"; \echo "date.timezone=${TIMEZONE}"; \} | tee conf.d/99_overrides.ini \# - config timezone&& ln -sf /usr/share/zoneinfo/${TIMEZONE} /etc/localtime \&& echo "${TIMEZONE}" > /etc/timezone \# ---------- clear works ----------&& rm -rf /var/cache/apk/* /tmp/* /usr/share/man \&& echo -e "\033[42;37m Build Completed :).\033[0m\n"WORKDIR /opt/www# 暴露 Hyperf 默认端口
EXPOSE 9501# 容器运行时启动 Hyperf 应用
# ENTRYPOINT ["php", "/opt/www/hyperf-skeleton-master/bin/hyperf.php", "start"]

 

默认把当前目录的Dockerfile文件生成镜像,起一个名字如(hyperf83),命令 docker build -t hyperf83:latest .

这个镜像的好处是,项目文件已经复制到镜像里面了。

 

docker run --name hyperf \
-v /root/docker:/data/project \
-w /data/project \
-p 9501:9501 -it \
--privileged -u root \
--entrypoint /bin/sh \
hyperf83:latest #hyperf
/hyperf:8.1-alpine-v3.18-swoole
  • 创建项目
    composer create-project hyperf/hyperf-skeleton
  • 启动项目
    cd hyperf-skeleton
    php bin/hyperf.php start

     

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1179183.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

COE_Main()代码注释

///////////////////////////////////////////////////////////////////////////////////////// /*** \brief CoE (CANopen over EtherCAT) 服务主处理函数。* \details 此函数在后台被调用&#xff0c;用于处理挂起的SDO&#xff08;服务数据对象&#xff09;读写请求。* …

基于springboot的网上购物商城系统的设计与实现项目源码 java毕设 免费分享

全套项目网盘打包下载&#xff1a;https://pan.quark.cn/s/73b8653a9c85项目清单&#xff1a;本系统是一个包含前台商城和后台管理的多角色电商平台&#xff0c;主要面向用户、商家和管理员三类角色。一、 前台商城功能模块&#xff08;面向普通用户&#xff09;1. 公共访问功能…

我读Population Based Training of Neural Networks

原文点此 1.intro PBT是一种简单的异步优化算法&#xff0c;它能够有效利用固定的计算预算&#xff0c;通过联合优化一组模型和其超参数以最大化性能。 2.methodology 目标是优化模型fff的参数θ\thetaθ以最大化目标函数Q^\hat {\mathcal{Q}}Q^​, 实际性能指标Q\mathcal{…

完整教程:腾讯云渠道商:腾讯云轻量服务器和CVM有什么差异?

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

机器学习周报三十一

文章目录摘要Abstract1 TripleFDS2 Flux-Text总结摘要 本周看了两篇关于场景文本编辑的论文&#xff0c;达到了最新的SoTA的论文&#xff0c;学习到了数据集构建和损失函数构造对模型性能提升至关重要。 Abstract This week, I read two papers on scene text editing, both…

分布式理论的认知重构:CAP 与 BASE 的真相、边界与实践逻辑 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Python中的JSON处理(标准库)

一、什么是JSON&#xff1f; JSON&#xff08;JavaScript Object Notation&#xff09;是一种基于文本的开放标准&#xff0c;用于表示结构化数据。它采用键值对的形式组织数据&#xff0c;支持以下基本数据类型&#xff1a; 字符串&#xff08;string&#xff09;数字&#…

Multi-Content GAN for Few-Shot Font Style Transfer(用于少样本字体风格迁移的多内容GAN)

预训练和正式训练&#xff0c;预选练是正式训练的第一阶段但二者损失不同注意&#xff1a;本论文是对字母的风格迁移在未来对汉字进行风格迁移时预训练的笔画划分&#xff08;或常用字形&#xff09;可能存在挑战预训练&#xff1a;通过对抗网络对26个字母的平均字形进行学习。…

主流 AI IDE 之一的 Claude Code 介绍

Claude Code 是 Anthropic&#xff08;Claude AI 的开发公司&#xff09;于 2025 年推出的代理式&#xff08;agentic&#xff09;编码工具&#xff0c;目前被公认为终端里最强的 AI 编程助手之一。它直接运行在你的终端&#xff08;Terminal / PowerShell / cmd&#xff09;&a…

两两交换链表中的节点-day04

两两交换链表中的节点 题目链接:https://leetcode.cn/problems/swap-nodes-in-pairs/solutions/444474/liang-liang-jiao-huan-lian-biao-zhong-de-jie-di-91/ 思路:新建头结点,保存第1结点,第2个结点,第3个结点的…

Mars-Admin 基于Spring Boot 3 + Vue 3 + UniApp的企业级管理系统

Mars-Admin 企业级管理系统 &#x1f525; 开箱即用的企业级全栈管理系统 &#x1f525; 一套基于 Spring Boot 3 Vue 3 UniApp 的现代化企业管理平台&#xff0c;采用前后端分离架构&#xff0c;提供完整的权限管理、用户管理、移动端支持等功能&#xff0c;是中小企业快速…

2026必备!继续教育TOP9AI论文写作软件测评与推荐

2026必备&#xff01;继续教育TOP9AI论文写作软件测评与推荐 2026年继续教育AI论文写作工具测评&#xff1a;精准筛选&#xff0c;高效助力学术创作 随着人工智能技术的不断进步&#xff0c;AI论文写作工具在继续教育领域的应用愈发广泛。对于需要撰写论文、发表研究成果的学员…

贵金属回收攻略:本地高价回收不踩坑,今日金价实时更新 - 非研科技

贵金属回收避坑指南:这 3 个套路一定要避开 1. 警惕“高价吸引,低价结算” 部分非正规商家会在网上标注“黄金回收 450 元/克”的超高价,吸引客户到店后,再以“纯度不足”“有磨损”“要扣手续费”等理由压低价格,…

MFC 对话框Alt+F4退出程序实例

MFC 对话框应用程序按AltF4退出程序实现方法 重写OnSysCommand函数 1.添加消息处理函数 在对话框类的头文件&#xff08;.h&#xff09;中添加&#xff1a; protected:virtual void OnSysCommand(UINT nID, LPARAM lParam);DECLARE_MESSAGE_MAP()2.在实现文件&#xff08;.cpp&…

SonarQube-开源的持续代码质量检测平台

一、SonarQube 核心定义 SonarQube 是一款开源的持续代码质量检测平台,由 SonarSource 公司开发维护。它通过自动化扫描,从代码质量、安全漏洞、可维护性、合规性四大维度对代码进行全方位审查,帮助团队在软件开发生…

AI 模型输出学术内容准确率飙升97%!我只用了这个简单提示词技巧

经常用AI工具辅助学术科研与写作的同仁,可能已经对提示词工程掌握的程度比较深了。为了让模型输出的内容更准确一点,提示词工程师也会研究各种复杂的提示词技巧,比如设定角色、思维链、多样本学习等等。 但最近七哥发现还有一种能提升模型输出内容准确率的方法,该方法出自…

读《大明王朝1566》有感

《大明王朝1566》从一件改稻为桑的事说起,牵扯出大明各个阶层之间的利益斗争。嘉靖年间,一年一度的国家财政会议召开,六部主管向皇上汇报去年的财政支出情况,并上报本年度的财政支出计划。去年财政收支情况依然不容…

亲测好用!10款一键生成论文工具测评,本科生毕业论文必备

亲测好用&#xff01;10款一键生成论文工具测评&#xff0c;本科生毕业论文必备 学术写作工具测评&#xff1a;为何需要这份2026年榜单&#xff1f; 随着人工智能技术的不断进步&#xff0c;越来越多的学术写作工具被推向市场&#xff0c;帮助学生和研究人员提升论文撰写效率。…

收藏这篇就够了!AI大模型学习路线全解析:从数学基础到实战应用

文章提供了AI大模型从零基础到进阶的完整学习路线&#xff0c;包括数学与编程基础、机器学习入门、深度学习深入、大模型探索、进阶应用及社区资源。详细列出了各阶段的理论学习资源&#xff08;书籍、课程&#xff09;和实践项目&#xff0c;并提供了大量学习资源包、视频教程…

2026本科必备9个降AI率工具测评榜单

2026本科必备9个降AI率工具测评榜单 降AI率工具测评&#xff1a;为何你需要一份专业榜单&#xff1f; 在2026年的学术环境中&#xff0c;论文的AI率检测已经成为毕业和科研的关键门槛。许多学生在提交前才发现自己的论文AI率超标&#xff0c;甚至被直接打回修改&#xff0c;严重…