docker run -it --rm ^
    --volume //var/run/docker.sock:/var/run/docker.sock ^
    --volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^
    --entrypoint="install" ^
    appwrite/appwrite:latest

  1. PowerShell
docker run -it --rm `
    --volume /var/run/docker.sock:/var/run/docker.sock `
    --volume ${pwd}/appwrite:/usr/src/code/appwrite:rw `
    --entrypoint="install" `
    appwrite/appwrite:latest

运行后,可以在浏览器上访问 http://localhost 找到 Appwrite 控制台。在非 Linux 的本机主机上完成安装后,服务器可能需要几分钟才能启动。

需要自定义容器构架,可以查看 Docker 环境变量https://appwrite.io/docs/environment-variables 文档。还可以参考我们的 docker-compose.ymlhttps://appwrite.io/install/compose.envhttps://appwrite.io/install/env 文件手动设置环境。

入门
1. 认证

集成使用多种登录方式(如电子邮件/密码、短信、OAuth、匿名、魔法链接等)对用户进行身份验证。

  • 30多种登录方式
  • 支持团队、角色和用户标签
  • 速率限制和高级用户保护
  • 自定义SMTP和电子邮件模板
const result = account.create(
	ID.unique(),
	'walterobrian@example.com',	
	'password',
	"Walter O'Brian"
);

注册登录

2. 数据库

存储、查询和管理数据,可扩展且可靠的数据库,由您喜爱的技术支持。

  • 安全稳定
  • 快速内存缓存
  • 高级权限模型
  • 自定义数据验证
  • 支持外键关联
const result = databases.createDocument( 'Your-tasks', tasks, ID.unique(), {
	'description': 'Research user needs', 
	'tags': ['UX', 'design'], 
	} 
);

3. 存储

上传和管理文件,安全地存储文件,具有高级压缩、加密和图像转换功能。

  • 文件静态和传输加密
  • 内置图像转换功能
  • 支持WebP/Brotli的高级压缩
const result = storage.createFile(
	'my-bucket',
	ID.unique(),
	document.getElementById("uploader").files[0]
);

文件上传

4. Serverless Function

使用Function可以自定义和扩展你的后端,部署和扩展在安全、隔离的运行时中运行的无服务器函数。

  • 从GitHub自动部署
  • 使用GitHub、CLI、事件监听器或HTTP请求触发
  • 本地部署目前支持30多种运行时,13种语言(基本涵盖所有的后端语言和技术)
  • Appwrite Cloud目前支持 node php-8.0 ruby-3.0 python-3.9 dart-2.17
  • 自定义域名支持
const userId = req.headers['user-id']; 

if (req.path === '/subscribe') { 
	const session = await stripe.checkout(userId); 
	return res.redirect(session.url, 303); 
} 

if (req.path === '/webhook') { 
	await appwrite.addSubscriberLabel(userId); 
} 

return res.json({ success: true });

5. 实时事件

实时事件适用于所有服务,订阅并使用实时API对任何Appwrite事件做出反应。

  • 无限订阅
  • 内置权限管理
  • 支持数据库、身份验证、存储和函数

多人协作场景

软件架构

系统架构图

从架构图上可以看出Appwrite 使用高拓展性的微服务架构。Appwrite 目前支持多种 API(REST、WebSocket 和 GraphQL),您可以根据开发习惯灵活选择。

Appwrite API 界面层利用后台缓存和任务委派来提供极速的响应时间。后台的 Worker 代理还允许使用消息队列来处理负载,并精确控制硬件合理分配和成本。

Appwrite Cloud

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
做到真正的技术提升。**

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐