
本镜像为Portland Oregon Drupal 8站点提供CI/CD流程支持,基于Lando容器化开发环境,集成Pantheon多环境(Dev/Test/Live)与CircleCI自动化构建测试。主要用于开发团队进行本地开发、代码版本控制、配置同步及持续集成部署,确保开发环境一致性与部署流程自动化。
标准克隆
bashgit clone git@github.com:eGovPDX/portlandor.git
该命令会在当前目录创建portlandor文件夹并拉取代码。
Windows开发者Git设置
Windows与类Unix系统(Unix/Linux/macOS)行尾符处理不同,需配置Git以确保代码兼容性:
bashgit clone -c core.symlinks=true git@github.com:eGovPDX/portlandor.git
注意:
git clone和git checkout需以管理员身份运行(命令提示符或PowerShell)以创建符号链接
bashgit config core.autocrlf false
安装Lando
遵循Lando官方安装指南
卸载Lando
遵循Lando官方卸载指南,如需完全清理,执行"移除残留配置"步骤。
项目根目录的.lando.yml文件已配置Pantheon Dev环境连接,首次初始化本地站点步骤如下:
bashlando start
Pantheon认证:
bashlando terminus auth:login --machine-token=[你的机器令牌]
Composer GitHub认证:
bashlando composer config --global --auth github-oauth.github.com "[你的GitHub令牌]"
安装依赖(新克隆仓库时):
bashlando composer install # 安装PHP依赖 lando yarn install # 安装前端依赖
数据库与文件设置(三选一):
bashlando latest # 自动下载并导入Pantheon Dev环境最新数据库
artifacts目录并放入备份文件:mkdir artifacts && mv [备份文件] artifacts/bashlando db-import artifacts/[备份文件名].sql.gz
web/sites/default/files目录构建本地环境:
bashgit checkout release # 切换到release分支 lando refresh # 执行composer install、数据库更新、配置导入及缓存重建
访问站点:浏览器打开 [***]
XDebug控制:
bashlando xdebug-on # 启用XDebug lando xdebug-off # 禁用XDebug(提升性能)
bashlando stop # 停止当前项目容器 lando poweroff # 停止所有Lando容器
更多Lando与Pantheon命令参考Lando Pantheon文档
默认本地站点运行于"开发模式",禁用缓存并启用Twig调试,配置文件为web/sites/default/local.services.yml。开发者可修改该文件调整设置(如启用缓存),但禁止提交此文件,确保默认开发环境一致性。
采用修改版GitHub Flow,通过feature分支提交PR至release分支,再合并至master部署。
启动本地开发
bashgit checkout release # 切换到release分支 git pull origin release # 拉取最新远程release分支代码 lando latest # 同步Pantheon Dev环境最新数据库 lando refresh # 刷新环境依赖与配置 git checkout -b powr-[ID] # 创建feature分支(ID为Jira任务ID)
详细步骤:
- 确认当前分支:
git checkout release- 拉取远程更新:
git pull origin release(可选git pull -p origin清理无效分支)- 命名规范:feature分支命名为
powr-[ID],子分支可加后缀(如powr-[ID]-a)- 分支切换:
git checkout -b powr-[ID]- 数据库同步:每个 sprint 开始时执行
lando latest- 环境刷新:
lando refresh(执行composer install、drush updb、drush cim、drush cr)
代码提交与推送
bashlando drush cex # 导出Drupal配置变更至代码仓库
bashgit add [文件路径] # 添加变更文件(或git add -A添加所有) git commit -m "POWR-[ID] 变更描述" # 提交并备注Jira任务ID
bashgit fetch origin release # 获取远程release分支最新代码 git rebase -i origin/release # 交互式变基,解决冲突后同步 git rebase --continue # 冲突解决后继续变基(如需) lando refresh # 刷新环境以应用release分支变更
bashgit push -u origin powr-[ID] # 推送至远程同名分支
创建Pull Request
release(默认可能为master)POWR-[ID] 功能简短描述,确保Jira自动关联任务CircleCI持续集成
PR创建后触发自动流程:
composer installdrush cim)、数据库更新(drush updb)、缓存重建(drush cr)ci/circleci: visual_regression的Details链接)合并至release分支
release分支,PR标题格式:POWR-[ID] 功能描述部署至Pantheon Dev环境
release到master分支(使用普通"Merge",非"Squash and merge")部署至Test/Live环境
Test环境部署:
/admin/config/development/configuration或执行lando terminus drush portlandor.test cim -yLive环境部署:Test环境验证通过后,重复上述步骤部署至Live环境
主题基于Webpack构建,Lando启动或lando refresh时自动触发,手动构建命令如下:
快速开始
bashlando yarn start # 启动开发模式,监视文件变更
访问Pattern Lab:[***]
常用命令
lando yarn run buildlando yarn run watchlando yarn run build:pllando yarn run watch:pllando yarn run clean:plWebpack构建输出说明
成功构建示例:
Hash: 83d85b18cfd6b88c5e7e Version: webpack 4.29.0 Time: 7680ms Built at: 02/05/2019 2:33:48 PM Asset Size Chunks Chunk Names css/style.bundle.css 196 KiB 0 [emitted] main css/style.bundle.css.map 542 KiB 0 [emitted] main js/main.bundle.js 81 KiB 0 [emitted] main js/main.bundle.js.map 320 KiB 0 [emitted] main
_fake.scss不存在导致构建失败)Lando环境内置Composer,用于管理Drupal模块及依赖。
安装 contrib 模块
bashlando composer require drupal/[模块名] # 安装模块并更新composer.json lando drush pm:enable [模块名] # 启用模块
更新依赖
lando composer updatelando composer update --with-dependencies drupal/devellando composer update --lockComposer使用指南参考:Drupal 8 Composer最佳实践,Composer速查表
测试文件位于tests/percy/__tests__/,按用户角色组织。执行测试前确保依赖已安装,通过Lando环境运行测试命令(具体命令需参考项目package.json配置)。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。




探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务