本地部署自动化工具 Automatisch 并实现外部访问

Automatisch 是一款业务自动化工具,能够连接 Twitter、Slack 等应用程序。通过 Automatisch 不需要编程知识就能创建自动化工作流,降低了运维成本,加速业务流程。还允许用户将数据存储在自己的服务器上,这对于处理敏感用户信息且不能冒险与外部云服务共享信息的企业至关重要。本文将详细的介绍如何利用 Docker 在本地部署 Automatisch 并结合路由侠实现外网访问本地部署的 Automatisch。

第一步,本地部署 Automatisch

本文 Automatisch 的安装需在 docker 环境下进行,若未安装 docker 可参考文章 安装 Docker 详细说明(Linux)

1,创建目录。

mkdir -p /volume1/docker/automatisch/{data,pdata,rdata}

2,进入目录。

 cd /volume1/docker/automatisch

3,创建 docker-compose.yml 文件并启动容器。

 vim docker-compose.yml 
version: '3.9'
services:
  main:
    image: automatischio/automatisch:latest
    container_name: automatischio-web
    restart: unless-stopped
    #entrypoint: /compose-entrypoint.sh
    ports:
      - 3048:3000
    depends_on:
      postgres:
        condition: service_healthy
      redis:
        condition: service_started
    environment:
      - HOST=localhost
      - PROTOCOL=http
      - PORT=3000
      - APP_ENV=production
      - REDIS_HOST=redis
      - POSTGRES_HOST=postgres
      - POSTGRES_DATABASE=automatisch
      - POSTGRES_USERNAME=automatisch_user
      - POSTGRES_PASSWORD=automatisch_password
      - ENCRYPTION_KEY=SqsKazDXkNVxuo3hpDz8k5ZHuJn9MYGZ
      - WEBHOOK_SECRET_KEY=zmegGnqj76BYxDeEMWT5gQKuEe8uhhi2
      - APP_SECRET_KEY=dDbwPkcUSXq6zKTSoya9UGaYscJ9aRTL
    volumes:
      - ./data:/automatisch/storage

  worker:
    image: automatischio/automatisch:latest
    container_name: automatischio-worker
    restart: unless-stopped
    #entrypoint: /compose-entrypoint.sh
    depends_on:
      - main
    environment:
      - APP_ENV=production
      - REDIS_HOST=redis
      - POSTGRES_HOST=postgres
      - POSTGRES_DATABASE=automatisch
      - POSTGRES_USERNAME=automatisch_user
      - POSTGRES_PASSWORD=automatisch_password
      - ENCRYPTION_KEY=SqsKazDXkNVxuo3hpDz8k5ZHuJn9MYGZ
      - WEBHOOK_SECRET_KEY=zmegGnqj76BYxDeEMWT5gQKuEe8uhhi2
      - APP_SECRET_KEY=dDbwPkcUSXq6zKTSoya9UGaYscJ9aRTL
      - WORKER=true
    volumes:
      - ./data:/automatisch/storage
      
  postgres:
    image: postgres:14
    container_name: automatischio-db
    restart: unless-stopped
    environment:
      - POSTGRES_DB=automatisch
      - POSTGRES_USER=automatisch_user
      - POSTGRES_PASSWORD=automatisch_password
    volumes:
      - ./pdata:/var/lib/postgresql/data
    healthcheck:
      test: ['CMD-SHELL', 'pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}']
      interval: 10s
      timeout: 5s
      retries: 5
      
  redis:
    image: redis
    container_name: automatischio-redis
    restart: unless-stopped
    volumes:
      - ./rdata:/data
 docker-compose up -d

4,浏览器输入 http://localhost:3048 即可访问 Automatisch 界面 (用户及密码为 user@automatisch.io / sample)。

第二步,外网访问 Automatisch

当前未提供网页管理,在任意一台 Windows 机器安装路由侠 Windows 版,用作跨机器管理。点此下载

1,下载安装完成后,打开路由侠界面,进入【设备中心】。点击右下角的“添加设备”,此时可查看到对应的安装码,此安装码用于将设备添加到对应账号下,可选中后复制。

1

2,直接下载后导入。

wget https://dl.luyouxia.com:8443/v2/lyx-docker-x86_64.tar
docker load -i lyx-docker-x86_64.tar

3,然后使用该镜像启动容器。

docker run --name lyx -it --restart=always --net=host -e code=这里填写安装码 luyouxia/lyx

4,当前 Linux 终端这边,如果是使用的上面的命令,Docker 是运行在前台,此时可以按住 Ctrl+C ,退出路由侠,容器也将退出。现在可以使用以下命令将其放入后台持续运行。

docker start lyx

5,现在回到 Windows 这边设备列表,点击右上角的×返回主界面,再次进入,就可以找到这个设备,可以修改名称。

6,回到主界面,点击【内网映射】。

7,注意右上角的设备名称下拉框,这里选中刚刚添加的设备名称,此时在这个界面上添加的映射,就属于刚刚这个设备。添加或修改一般需要等待30秒,容器中的路由侠进程就会更新并加载。切换好设备后,点击【添加映射】。

8,选择【原生端口】。

9,在内网端口里填写端口 3048 后点击【创建】按钮,如下图。

10,创建好后,就可以看到一条映射的公网地址,鼠标右键点击【复制地址】。

11,在外网电脑上,打开浏览器,在地址栏输入从路由侠生成的外网地址,就可以看到内网部署的 Automatisch 界面了。


以上就是用 Docker 在本地局域网内部署 Automatisch 以及利用路由侠内网穿透实现外网也能访问的全部教程了。如果想要对路由侠有更多的了解,可以进官网详细了解,路由侠官网地址:www.luyouxia.com