docker 安装

默认使用Docker Hub源。

国内用户可以使用阿里云镜像仓库。

  • guacd registry.cn-beijing.aliyuncs.com/dushixiang/guacd
  • next-terminal registry.cn-beijing.aliyuncs.com/dushixiang/next-terminal

使用 sqlite 存储数据

在任意位置创建文件夹 next-terminal ,然后在此文件夹下创建 docker-compose.yml 并写入如下内容:

version: '3.3'
services:
  guacd:
    image: dushixiang/guacd:1.3.0
    volumes:
      - ./data:/usr/local/next-terminal/data
    restart:
          always
  next-terminal:
    image: dushixiang/next-terminal:latest
    environment:
      DB: sqlite
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
    ports:
      - "8088:8088"
    volumes:
      - /etc/localtime:/etc/localtime
      - ./data:/usr/local/next-terminal/data
    restart:
      always
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

前台启动命令

docker-compose up
1

后台启动命令

docker-compose up -d
1

使用 mysql 存储数据

在任意位置创建文件夹 next-terminal ,然后在此文件夹下创建 docker-compose.yml 并写入如下内容:

version: '3.3'
services:
  mysql:
    image: mysql:8.0
    environment:
      MYSQL_DATABASE: next-terminal
      MYSQL_USER: next-terminal
      MYSQL_PASSWORD: next-terminal
      MYSQL_ROOT_PASSWORD: next-terminal
    volumes:
      - ./data/mysql:/var/lib/mysql
    restart:
          always
  guacd:
    image: dushixiang/guacd:1.3.0
    volumes:
      - ./data:/usr/local/next-terminal/data
    restart:
          always
  next-terminal:
    image: dushixiang/next-terminal:latest
    environment:
      DB: mysql
      MYSQL_HOSTNAME: mysql
      MYSQL_PORT: 3306
      MYSQL_USERNAME: next-terminal
      MYSQL_PASSWORD: next-terminal
      MYSQL_DATABASE: next-terminal
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
    ports:
      - "8088:8088"
    volumes:
      - /etc/localtime:/etc/localtime
      - ./data:/usr/local/next-terminal/data
    depends_on:
      - mysql
    restart:
      always
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

前台启动命令

docker-compose up
1

后台启动命令

docker-compose up -d
1

使用外部的 mysql 存储数据

在任意位置创建文件夹 next-terminal ,然后在此文件夹下创建 docker-compose.yml 并写入如下内容:

version: '3.3'
services:
  guacd:
    image: dushixiang/guacd:1.3.0
    volumes:
      - ./data:/usr/local/next-terminal/data
    restart:
          always
  next-terminal:
    image: dushixiang/next-terminal:latest
    environment:
      DB: mysql
      # 请修改下面的 MySql 配置,需自行创建数据库和用户
      MYSQL_HOSTNAME: mysql
      MYSQL_PORT: 3306
      MYSQL_USERNAME: next-terminal
      MYSQL_PASSWORD: next-terminal
      MYSQL_DATABASE: next-terminal
      # 请修改上面的 MySql 配置,需自行创建数据库和用户
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
    ports:
      - "8088:8088"
    volumes:
      - /etc/localtime:/etc/localtime
      - ./data:/usr/local/next-terminal/data
    restart:
      always
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

前台启动命令

docker-compose up
1

后台启动命令

docker-compose up -d
1

如何开启sshd服务?

以sqlite模式为例,修改 docker-compose.yml,增加标记 #增加 下面的内容

version: '3.3'
services:
  guacd:
    image: dushixiang/guacd:1.3.0
    volumes:
      - ./data:/usr/local/next-terminal/data
    restart:
          always
  next-terminal:
    image: dushixiang/next-terminal:latest
    environment:
      DB: sqlite
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
      # 增加
      SSHD_ENABLE: "true"
    ports:
      - "8088:8088"
      # 增加
      - "8089:8089"
    volumes:
      - /etc/localtime:/etc/localtime
      - ./data:/usr/local/next-terminal/data
      # 增加
      - ~/.ssh/id_rsa:/root/.ssh/id_rsa
    restart:
          always
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

接下来使用 next-terminal 中的用户即可使用。 示例:

ssh admin@127.0.0.1 -p 8089
1

环境变量

参数含义默认值
DB数据库类型,可选 ['sqlite','mysql']sqlite
SQLITE_FILEsqlite 数据库文件存放地址/usr/local/next-terminal/data/sqlite/next-terminal.db
MYSQL_HOSTNAMEmysql 数据库地址127.0.0.1
MYSQL_PORTmysql 数据库端口3306
MYSQL_USERNAMEmysql 数据库用户next-terminal
MYSQL_PASSWORDmysql 数据库密码next-terminal
MYSQL_DATABASEmysql 数据库名称next-terminal
SERVER_ADDR服务器监听地址0.0.0.0:8088
ENCRYPTION_KEY授权凭证和资产的密码,密钥等敏感信息加密的keynext-terminal
GUACD_HOSTNAMEGuacd 服务地址127.0.0.1
GUACD_PORTGuacd 服务监听端口4822
GUACD_RECORDING录屏文件保存目录/usr/local/next-terminal/data/recording
GUACD_DRIVE远程桌面挂载盘根目录/usr/local/next-terminal/data/drive
SSHD_ENABLE是否开启sshd服务false
SSHD_ADDRsshd服务监听的地址0.0.0.0:8089
SSHD_KEYsshd服务使用私钥路径~/.ssh/id_rsa