Anki Vector escape cabin installation detailed explanation

The githut address of vector’s escape pod: https://github.com/cyb3rdog/escapepod-docker

Prepared machine environment

  • win10
  • Install docker (if you install Baidu by yourself)

begin

Download the script with git first;

git clone https://github.com/cyb3rdog/escapepod-docker.git

Right-click and use the administrator to open: Git Bash

image-20210602160651729

Switch to the downloaded script directory: (Note: the path "/")

cd D:/git_projects/escapepod-docker/windows

Then press README.md to execute:

./DOCKER-ESCAPEPOD-START.bat

problem solved

(If you open cmd directly, it will report:'docker-machine' is not an internal or external command, nor is it a runnable program;) (If Git Bash is not executed by an administrator ./DOCKER-ESCAPEPOD-START.bat, it will report: no permission;)

If it reports: VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path //Solution: Need to install VirtualBox-6.1.22-144080-Win.exe

如果报:Error with pre-create check: "This computer is running Hyper-V. VirtualBox won't boot a 64bits VM when Hyper-V is activated. Either use Hyper-V as a driver, or disable the Hyper-V hypervisor. (To skip this check, use --virtualbox-no-vtx-check)"

​ //Solve:在DOCKER-ESCAPEPOD-START.bat的第52行增加:--virtualbox-no-vtx-check,如下图

image-20210602171403289

Execution: docker-machine activeError:

Error getting IP address: ssh command error: command: ip addr show err: exit status 255 //Solution: directly docker-machine ip ESCAPEPOD, you can find the ip

Check if the program is normal

Check whether VirtualBox is started:

image-20210602172324236

Check whether the container is started:

image-20210602172514744

Native configuration

Add a line in the hosts of C:\Windows\System32\drivers\etc:

127.0.0.1 escapepod.local

Save the file. As shown in the figure

image-20210602171910156

Just visit:  http://escapepod.local/

image-20210602172606185

Description of the procedure

Program location

Query container:docker ps

image-20210602172918866

Enter the container:docker exec -it 3ee08a650800 /bin/bash

image-20210602174905602

Path to escape pod:/usr/local/escapepod

mongodb location:/usr/local/bin

dbPath: /var/lib/mongodb

Configuration file

Configuration file: escape-pod.conf

[email protected]:/usr/local# cat /etc/escape-pod.conf

DDL_RPC_PORT=8084DDL_HTTP_PORT=8085DDL_OTA_PORT=8086DDL_UI_PORT = 80DDL_SAYWHATNOW_STT_MODEL=/usr/local/escapepod/model.tfliteDDL_SAYWHATNOW_STT_SCORER=/usr/local/escapepod/model.scorerDDL_DB_NAME=databaseDDL_DB_HOST=127.0.0.1DDL_DB_PASSWORD=MzBmMWFmY2NhYzE0DDL_DB_PORT=27017DDL_DB_USERNAME=myUserAdmin

[email protected]:/usr/local# cat /etc/mongod.conf

# mongod.conf# for documentation of all options, see:#   http://docs.mongodb.org/manual/reference/configuration-options/# Where and how to store data.storage:  dbPath: /var/lib/mongodb  journal:    enabled: true#  engine:# mmapv1:#  wiredTiger:# where to write logging data.systemLog:  destination: file  logAppend: true  path: /var/log/mongodb/mongod.log# network interfacesnet:  port: 27017  bindIp: 127.0.0.1# how the process runsprocessManagement:  timeZoneInfo: /usr/share/zoneinfo#security:#operationProfiling:#replication:#sharding:## Enterprise-Only Options:#auditLog:#snmp:replication:  replSetName: rs0security:  authorization: enabled  keyFile: /etc/mongod.key

Copy the program to the local host:

#Return to the host computer windowexit#Copy escapepod to the d drive of the host computerdocker cp 3ee08a650800:/usr/local/escapepod d:/#Copy mongodb to the main host machine D disk mongodbdocker cp 3ee08a650800:/usr/local/bin d:/mongodb

Command installation

Query command of ubuntu installation port: apt-get install lsof

image-20210602193223661

Install network tool ifconfig apt-get install net-tools

[email protected]:/home/ubuntu# qemu-arm-static -version qemu-arm version 4.2.1 (Debian 1:4.2-3ubuntu6.14) Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developers

Database Connectivity

  • Modify the same network as the host and the container, add: --network=host

docker run -it --rm --name escapepod --network=host -d cyb3rdog/escapepod:latest

  • Modify the mongod.conf text to support remote access:

bindIp: 127.0.0.1改为bindIp: 0.0.0.0

  • Use "Navicat Premium 15" to connect; as shown in the figure
image-20210602194043231

There are only 2 tables in the database: intents, licenses

image-20210602195014294

The contents of the intents table:

image-20210602195021403

The contents of the licenses table:

image-20210602195032160

to sum up

  • It was discovered after installation that the escape pod (escape pod) also needs a license ;
  • escapepod currently does not understand the anti-editing interpretation;