分享 552 0

    Gotosocial 之 用户自定义

    AI摘要:本文介绍了如何优雅地部署Gotosocial,并提供了使用docker compose进行部署的示例。通过编写docker-compose.yaml文件,将容器内的/gotosocial/web目录映射到本地目录./web,并将web.zip解压缩到根目录中。

    介绍了如何优雅的部署Gotosocial.

    本文是Gotosocial的使用进阶教程,如有不足,请指正

    部署

    根据官方示例文档,使用docker compose部署
    编写docker-compose.yaml,如下

    services:
      gotosocial:
        image: superseriousbusiness/gotosocial:latest
        container_name: gotosocial
        networks:
          - gotosocial
        environment:
          GTS_HOST: ima.cm
          GTS_DB_TYPE: sqlite
          GTS_DB_ADDRESS: /gotosocial/storage/sqlite.db
          GTS_STORAGE_BACKEND: s3
          GTS_STORAGE_S3_BUCKET: 
          GTS_STORAGE_S3_ENDPOINT: 
          GTS_STORAGE_S3_ACCESS_KEY: 
          GTS_STORAGE_S3_SECRET_KEY: 
          GTS_STORAGE_S3_PROXY: false
          GTS_ACCOUNTS_ALLOW_CUSTOM_CSS: true
          TZ: Asia/Chongqing
        ports:
          - "127.0.0.1:8080:8080"  
        volumes:
          - ./data:/gotosocial/storage
          - ./web:/gotosocial/web #映射出来
        restart: "always"
    
    networks:
      gotosocial:
        ipam:
          driver: default

    主要是为了把容器内的/gotosocial/web目录映射到本地目录./web,然后我们可以根据自己的需求来修改前端的模板

    由于源码内的前端资源需要编译,所以我偷懒打包了一份编译好的提供给大家使用,

    下载地址

    该主题我粗略翻译了一下,演示如下

    https://ima.cm

    Environment

    根据官方文档,参考设置文件config.yaml来自定义

    https://github.com/superseriousbusiness/gotosocial/blob/main/example/config.yaml

    其中,如果想更改数据库类型可以参照db-type: "postgres"来定义,在Environment 中必须全部使用大写字母和下划线,如GTS_DB_TYPE.:后面的设定值无需双引号""包裹.

    WEB设置

    默认值

    # Default: "./web/template/"
    web-template-base-dir: "./web/template/"
    # Default: "./web/assets/"
    web-asset-base-dir: "./web/assets/"

    也可以通过更改Environment设置来自定义WEB的映射目录.

    实例语言设置,貌似暂时不支持中文

    # Example: ["nl", "en-gb", "fr"]
    # Default: []
    instance-languages: []

    自定义CSS 的设置

    # Options: [true, false]
    # Default: false 默认关闭
    accounts-allow-custom-css: false

    如需开启则需要

    GTS_ACCOUNTS_ALLOW_CUSTOM_CSS: true

    储存设置

    可以选择本地储存还是使用S3标准协议的对象储存来保存附件.

    SMTP设置

    # Default: ""
    smtp-host: ""
    # Default: 0
    smtp-port: 0
    # Default: ""
    smtp-username: ""
    # Default: ""
    smtp-password: ""
    # Default: ""
    smtp-from: ""

    以此

    GTS_SMTP_HOST:
    GTS_SMTP_PORT:
    GTS_SMTP_USERNAME:
    GTS_SMTP_PASSWORD:
    GTS_SMTP_FROM:

    字母全部大写,前面加上GTS,-一律写为_即可

    老孙
    资深网民孙先生