标签: Container
-
本文记录在 Windows 10 专业版中基于 Laravel Sail 创建 weibo 应用的过程。操作包括使用 Composer 创建项目、解决执行脚本报错与端口冲突问题,并通过停止占用端口 80 的容器完成环境启动。最后通过编辑 hosts 文件配置域名映射,成功在浏览器访问并得到 200 响应。
-
容器更换基础镜像后,在特定 Rancher 环境变量开启时启动失败并提示模块已加载。经排查,原因为命令行执行时重复加载了 gd、exif 和 sockets 扩展。最终通过修改 Dockerfile,利用 sed 命令从配置文件中删除对应扩展的加载项,解决了重复加载报错问题,确保了容器在环境变量开启时成功启动。
-
本文针对公有云com环境数据向csp环境迁移时程序版本不一致且无法升级的问题,介绍了实现流程。通过分析Git日志找出14个数据库迁移文件的差异,确认多出的SQL主要为表结构调整。在无法统一结构的情况下,将两个数据库导入本地,编写支持租户ID参数的迁移命令,使用事务处理并逐一迁移表。文章记录了pa_plan表的迁移过程,成功将4个租户的数据迁移至csp环境,并探讨了潜在的主键冲突及关联表处理问题。
-
针对后台关闭列表项后接口响应数据在几分钟内反复出现与消失的问题,经排查确认根源在于 Varnish 部署架构。Rancher 环境中发现运行着 3 个 Varnish 容器,由于负载均衡导致每次请求落在不同服务器,各节点缓存未同步且出现资源浪费,进而造成响应数据不一致。最终结论是现阶段缓存列表接口应配置为单机部署,若使用集群部署建议仅支持详情接口。
-
针对 MySQL 容器查询时报错提示不兼容 ONLY_FULL_GROUP_BY 的问题,文章记录了在容器内连接 MySQL 并临时修改 sql_mode 的操作过程。通过执行 set global 命令调整设置后,查询 SQL 不再报错且接口响应恢复正常,这是一种临时的解决方案,若容器升级或重新部署则需要重新执行。
-
本文记录了将两个项目的前后端合并至一个镜像与容器的实现流程。通过调整前端与接口的构建目录结构,重命名配置文件并修改 Dockerfile,在 Jenkins 中配置多个 Git 仓库源码管理及镜像构建发布,最终在单一容器内通过端口区分同时部署前后端项目,经验证两者目录结构存在且皆可正常访问,符合预期。
-
在 Rancher 中升级容器时遇到报错:CHANNEL_PUB_API_CFG_APP_AVATAR_UPLOAD_PATH: unbound variable。即使在管理界面中添加了相关环境变量,问题依然存在。通过在环境变量中赋予具体值可暂时解决,但最终排查发现是与变量名称特殊性有关。删除配置文件中对应的环境变量并在 Rancher 中移除相关配置后,容器升级成功,问题彻底解决。
-
针对产品部署时初始化数据的存储需求,文章阐述了在容器启动时将文件复制至 NAS 存储的实现方法。基于 CakePHP v2.6.4 框架,通过新建 Shell 脚本文件,编写了将本地目录下特定日期文件夹中的所有文件同步至挂载 NAS 存储目录的逻辑。操作中利用命令行工具执行同步任务,并配置了容器启动脚本自动运行该命令。最终经日志验证,文件成功复制至指定 NAS 路径,满足了自动化初始化存储的预期。
-
针对在 Rancher 中使用同一镜像地址升级容器时出现部分容器环境变量已替换、部分未替换的问题,本文通过对比日志和启动配置发现异常容器的入口点被设置为 /bin/bash 导致脚本未执行。解决方法是将入口点值修改为空并重新升级,此后容器正确执行 /config/bootstrap.sh 脚本,环境变量替换恢复正常且日志不再报错。
