
https://github.com/deco-finter/fableous/actions/workflows/build-backend.yml/badge.svg](https://github.com/deco-finter/fableous/actions/workflows/build-backend.yml) https://github.com/deco-finter/fableous/actions/workflows/build-frontend.yml/badge.svg](https://github.com/deco-finter/fableous/actions/workflows/build-frontend.yml)
Fableous is a collaborative drawing platform to support the learning environment of children with ASD (Autism Spectrum Disorder). Fableous is is powered by Go backend and React frontend, using WebSocket protocol and Protocol Buffer-encoded messages.
This project is hosted on a VPS, depolyed and running via Docker containers. Source code is hosted on GitHub, and static code analysis is run by SonarCloud to ensure code maintainability.
The application is divided into two parts:
| Name | Code Name | Stack |
|---|---|---|
| Backend | fableous-be | Go, Gin + Gorm, PostgreSQL |
| Frontend | fableous-fe | TypeScript, React |
The protobuf implementations for both fableous-be and fableous-fe must be generated prior to starting development. Ensure that Go and Node.js are properly installed.
shell$ make
fableous-be uses Go Modules module/dependency manager, hence at least Go 1.11 is required. To ease development, https://github.com/cosmtrek/air is used to live-reload the application. Install the tool as documented.
To begin developing, simply enter the sub-directory and run the development server:
shell$ cd fableous-be $ go mod tidy $ air
To begin developing, simply enter the sub-directory and run the development server:
shell$ cd fableous-fe $ yarn $ yarn start
Both fableous-be and fableous-fe are containerized and pushed to https://hub.docker.com/r/daystram/fableous. They are tagged based on their application name and version, e.g. daystram/fableous:be or daystram/fableous:be-v1.1.0.
To run fableous-be, run the following:
shell$ docker run --name fableous-be --env-file /path_to_env_file/.env -p 8080:8080 -d daystram/fableous:be
And fableous-fe as follows:
shell$ docker run --name fableous-fe -p 80:80 -d daystram/fableous:fe
The following are required for fableous-be to function properly:
Their credentials must be provided in the environment variable.
To deploy to a Kubernetes cluster, Helm charts could be used. Add the repository:
shell$ helm repo add daystram https://charts.daystram.com $ helm repo update
Ensure you have the secrets created for fableous-be by providing the secret name in values.yaml, or creating the secret from a populated .env file (make sure it is on the same namespace as fableous installation):
shell$ kubectl create secret generic secret-fableous-be --from-env-file=.env
And install fableous:
shell$ helm install fableous daystram/fableous
You can override the chart values by providing a values.yaml file via the --values flag.
Pre-release and development charts are accessible using the --devel flag. To isntall the development chart, provide the --set image.tag=dev flag, as development images are deployed with the suffix dev.
For ease of deployment, the following docker-compose.yml file can be used to orchestrate the stack deployment:
ymlversion: "3" services: fableous-be: image: daystram/fableous:be ports: - "8080:8080" env_file: - /path_to_env_file/.env depends_on: - "postgres" restart: unless-stopped fableous-fe: image: daystram/fableous:fe ports: - "80:80" restart: unless-stopped postgres: image: postgres:13.3-alpine expose: - 5432 volumes: - /path_to_postgres_data:/var/lib/postgresql/data restart: unless-stopped
UUID support is also required in PostgreSQL. For modern PostgreSQL versions (9.1 and newer), the contrib module uuid-ossp can be enabled as follows:
sqlCREATE EXTENSION IF NOT EXISTS "uuid-ossp";
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务