使用 Docker 创建 Frappe 语言环境
摘要 frappe框架本地环境搭建和本地开发应用指南。在本指南中,安装了 Frappe 版本 13,这是编写本指南时的最新更新,其中提到version-13以替换为最新版本。 先决条件 要开始开发,需要以下要求。 码头工人 码头工人撰写 视觉工作室代码 准备开发容器 克隆并进入目录frappe_docker git clone https://github.com/frappe/frappe_do
摘要
frappe框架本地环境搭建和本地开发应用指南。在本指南中,安装了 Frappe 版本 13,这是编写本指南时的最新更新,其中提到version-13
以替换为最新版本。
先决条件
要开始开发,需要以下要求。
-
码头工人
-
码头工人撰写
-
视觉工作室代码
准备开发容器
克隆并进入目录frappe_docker
git clone https://github.com/frappe/frappe_docker.git
cd frappe_docker
进入全屏模式 退出全屏模式
将 devcontainer 的示例配置从文件夹devcontainer-example
复制到.devcontainer
cp -R devcontainer-example .devcontainer
进入全屏模式 退出全屏模式
使用 VSCode 远程容器扩展
为了更轻松地在 Frappe 框架上进行开发,我建议使用VSCode Remote-Containers 扩展。在开始之前先安装此扩展程序。
在打开容器之前,您可以将数据库更改为在.devcontainer/docker-compose.yml
中使用,默认配置为 MariaDB,但可以与 PostgreSQL 一起使用。
安装扩展程序后,VSCode 将询问您是否要使用.devcontainer
内的配置打开容器。进入 VSCode 后,您将看到容器内的文件,并且在您的终端中,它们已经在容器内,我推荐你去使用 Bench 命令。
配置工作台
在容器的终端中运行以下命令。您可能需要在 VSCode 中打开一个新终端
bench init --skip-redis-config-generation --frappe-branch version-13 frappe-bench
cd frappe-bench
进入全屏模式 退出全屏模式
从这里开始,所有的命令总是在frappe-bench
文件夹内执行,否则将不起作用。
配置主机
我们必须告诉 bench 使用正确的容器而不是 localhost。在容器内运行以下命令。
bench set-mariadb-host mariadb
bench set-redis-cache-host redis-cache:6379
bench set-redis-queue-host redis-queue:6379
bench set-redis-socketio-host redis-socketio:6379
进入全屏模式 退出全屏模式
编辑Procfile
打开 Procfile 文件并删除包含 Redis 配置的三行,手动或运行以下命令:
sed -i '/redis/d' ./Procfile
进入全屏模式 退出全屏模式
创建一个带长凳的新站点
可以使用以下命令创建一个新站点:
bench new-site sitename --no-mariadb-socket
进入全屏模式 退出全屏模式
站点名称必须以 .localhost 结尾才能在本地部署。
例子:
bench new-site mysite.localhost --no-mariadb-socket
进入全屏模式 退出全屏模式
该命令将询问 MariaDB root 用户的密码。默认密码是123
。它还会要求您定义用于登录 Frappe 的用户密码Administrator
。
这将在frappe-bench/sites
内创建一个新站点和目录mysite.localhost
。
选项--no-mariadb-socket
将配置站点的数据库凭据以使用 docker。
如果你想通过浏览器输入mysite.localhost
你必须在 /etc/host 中进行相应的配置,如果你是在 Linux 或等效的 Windows 上。
在新站点设置bench developer模式
要开发新应用,最后一步是将网站置于开发者模式。文档可在此链接获得。
bench --site mysite.localhost set-config developer_mode 1
bench --site mysite.localhost clear-cache
进入全屏模式 退出全屏模式
创建新应用
要创建新应用,请运行以下命令:
bench new-app sample_app
进入全屏模式 退出全屏模式
sample_app
就是一个例子。应用程序的名称必须有_
来分隔它们的单词。
该命令将要求填写以下字段。
App Name: sample_app
App Title: Sample App
App Description: This is a sample app.
App Publisher: Acme Inc.
App Icon: icon-linux
App Color: #6DAFC9
App Email: info@example.com
App URL: http://example.com
App License: MIT
进入全屏模式 退出全屏模式
最后,要在网站上安装应用程序,请运行以下命令:
bench --site mysite.localhost install-app sample_app
进入全屏模式 退出全屏模式
有关 Frappe 应用程序的更多详细信息,请参阅文档的以下链接。
安装应用程序
也可以安装现有的应用程序。它必须以前位于 git 存储库中。
在以下示例中,下载了一个应用程序,然后将其安装在站点上。
bench get-app myapp https://github.com/myusername/myapp.git
bench --site mysite.localhost install-app myapp
进入全屏模式 退出全屏模式
破面罢工
在frappe-bench
目录中运行以下命令。
bench start
进入全屏模式 退出全屏模式
现在您可以使用用户Administrator
和创建站点时注册的密码登录。
您的站点现在可以从localhost:8000访问,或者如果您配置了etc/host
为它定义的 url。
手动启动容器
如果不使用 VSCode,可以使用以下命令手动启动容器:
运行容器
docker-compose -f .devcontainer/docker-compose.yml up -d
进入全屏模式 退出全屏模式
并使用以下命令进入开发容器外壳:
docker exec -e "TERM=xterm-256color" -w /workspace/development -it devcontainer_frappe_1 bash
进入全屏模式 退出全屏模式
然后就是重复上面第Configurar Bench
节中详述的步骤
更多推荐
所有评论(0)