incubator-answer icon indicating copy to clipboard operation
incubator-answer copied to clipboard

两次安装Answer失败-已经解决,可以启动

Open notfresh opened this issue 3 years ago • 4 comments

第一次失败

➜  docker run -p 9080:80 -v $PWD/answer-data:/data --name answer answerdev/answer:latest
[config-file] try to install...
[config-file] /data/conf/config.yaml already exists
[upload-dir] try to install...
[upload-dir] install success, upload directory is /data/upfiles
[i18n] try to install i18n bundle...
[i18n] find i18n bundle 3
[i18n] install en_US.yaml bundle...
[i18n] install en_US.yaml bundle success
[i18n] install it_IT.yaml bundle...
[i18n] install it_IT.yaml bundle success
[i18n] install zh_CN.yaml bundle...
[i18n] install zh_CN.yaml bundle success
install all initial environment done
read config successfully
new database failed:  dial tcp: lookup db on 100.100.2.136:53: no such host
init database error:  dial tcp: lookup db on 100.100.2.136:53: no such host
panic: dial tcp: lookup db on 100.100.2.136:53: no such host

goroutine 1 [running]:
main.runApp()
	/go/src/github.com/answerdev/answer/cmd/answer/main.go:51 +0x22c
main.glob..func1(0x3433a20?, {0xef2e49?, 0x2?, 0x2?})
	/go/src/github.com/answerdev/answer/cmd/answer/command.go:52 +0x17
github.com/spf13/cobra.(*Command).execute(0x3433a20, {0xc00006e9a0, 0x2, 0x2})
	/go/pkg/mod/github.com/spf13/[email protected]/command.go:876 +0x67b
github.com/spf13/cobra.(*Command).ExecuteC(0x3432da0)
	/go/pkg/mod/github.com/spf13/[email protected]/command.go:990 +0x3b4
github.com/spf13/cobra.(*Command).Execute(...)
	/go/pkg/mod/github.com/spf13/[email protected]/command.go:918
main.Execute()
	/go/src/github.com/answerdev/answer/cmd/answer/command.go:155 +0x25
main.main()
	/go/src/github.com/answerdev/answer/cmd/answer/main.go:37 +0x17
➜  answer

看样子,是数据库连接出现了错误。

当我重新下载了一次源代码到另一个目录里,尝试使用docker命令,发现还是失败了。

然后,使用二进制运行,也找不到门路,让人不愉快的体验。

我看INSTALL.md,也说的不是很清楚。

总之,很难受,要搞懂这个错误,需要追踪很长的代码,有点沮丧,刚开始就感觉一座大山在前面。

我觉得缺少一个整体的系统启动流程图,让人有一个清晰的头绪,但是作为一个经典的前后端项目,它必然就很简单,但是目前我要追踪很多代码,才能让它在本机启动。

头大,现在一点思路都没有,然后。

第二次失败

我尝试使用 docker-compose up

➜  answer1105 git:(main) ✗ docker-compose up
[+] Running 2/0
 ⠿ Container answer1105-db-1      Created                                                                                                                                       0.0s
 ⠿ Container answer1105-answer-1  Created                                                                                                                                       0.0s
Attaching to answer1105-answer-1, answer1105-db-1
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] mysqld (mysqld 10.4.7-MariaDB-1:10.4.7+maria~bionic) starting as process 1 ...
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Using Linux native AIO
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Uses event mutexes
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Number of pools: 1
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Using SSE2 crc32 instructions
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] mysqld: O_TMPFILE is not supported on /tmp (disabling future attempts)
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Initializing buffer pool, total size = 256M, instances = 1, chunk size = 128M
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Completed initialization of buffer pool
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: 128 out of 128 rollback segments are active.
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Creating shared tablespace for temporary tables
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Waiting for purge to start
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: 10.4.7 started; log sequence number 384016; transaction id 334
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] Plugin 'FEEDBACK' is disabled.
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] Server socket created on IP: '::'.
answer1105-db-1      | 2022-11-05 15:39:10 0 [Warning] 'proxies_priv' entry '@% root@e4fb18bb2d2c' ignored in --skip-name-resolve mode.
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] Reading of all Master_info entries succeeded
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] Added new Master_info '' to hash table
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] mysqld: ready for connections.
answer1105-db-1      | Version: '10.4.7-MariaDB-1:10.4.7+maria~bionic'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution
answer1105-db-1      | 2022-11-05 15:39:10 0 [Note] InnoDB: Buffer pool(s) load completed at 221105 15:39:10
answer1105-answer-1  | [config-file] try to install...
answer1105-answer-1  | [config-file] /data/conf/config.yaml already exists
answer1105-answer-1  | [upload-dir] try to install...
answer1105-answer-1  | [upload-dir] install success, upload directory is /data/upfiles
answer1105-answer-1  | [i18n] try to install i18n bundle...
answer1105-answer-1  | [i18n] find i18n bundle 3
answer1105-answer-1  | [i18n] install en_US.yaml bundle...
answer1105-answer-1  | [i18n] install en_US.yaml bundle success
answer1105-answer-1  | [i18n] install it_IT.yaml bundle...
answer1105-answer-1  | [i18n] install it_IT.yaml bundle success
answer1105-answer-1  | [i18n] install zh_CN.yaml bundle...
answer1105-answer-1  | [i18n] install zh_CN.yaml bundle success
answer1105-answer-1  | install all initial environment done
answer1105-answer-1  | read config successfully
answer1105-answer-1  | [database] already exists
answer1105-answer-1  | init database successfully
answer1105-db-1      | 2022-11-05 15:39:40 9 [Warning] Aborted connection 9 to db: 'answer' user: 'root' host: '172.26.0.3' (Got an error reading communication packets)
answer1105-answer-1  | 2022-11-05 23:39:40.649	INFO	/go/src/github.com/answerdev/answer/internal/base/data/data.go:71	try to load cache file from /tmp/cache/cache.db
answer1105-answer-1  | 2022-11-05 23:39:40.659	WARN	/go/src/github.com/answerdev/answer/internal/base/data/data.go:73	open /tmp/cache/cache.db: no such file or directory
^@^@^@^@^@^@^@

我的环境是 Ubuntu20.04, 直接下载的最新的代码进行部署,遇到了docker容器连接错误的问题。

notfresh avatar Nov 05 '22 15:11 notfresh

遇到相同的错误

chinoll avatar Nov 05 '22 17:11 chinoll

感谢问题反馈

  1. 当前使用 docker 安装会在当前目录下 $PWD/answer-data 创建 answer-data 文件夹,文件夹中包含配置文件等数据,启动时候提示 /data/conf/config.yaml already exists,证明配置文件已经存在,如果是新的初次安装,请删除 answer-data 文件夹中所有相关文件。如果是第二次安装,请修改对应的配置文件 /answer-data/conf/config.yaml 对应的数据库连接。
  2. 第二次安装看日志并没有任何问题,各项初始化看日志也是正常的,启动后直接访问即可。如果是对 [Warning] Aborted connection 9 to db: 'answer' user: 'root' host: '172.26.0.3' (Got an error reading communication packets) 有担心,不必担心,这是一个警告提示,是由于 docker-compose 的 depends_on 导致,它会不断的检测 mysql 是否正常启动,这只是由于还没有正常连接的一个提示信息,不会影响 answer 正常运行。

再次感谢您的建议,有关安装这部分我们已经正在优化了,现在目前对于初次的用户来说成本较高,还会遇到一些问题,我们也正在设计解决。还有安装和使用相关的文档我们也在积极补充,后续会有更好的文档说明来解答您相关的疑惑。

LinkinStars avatar Nov 07 '22 01:11 LinkinStars

第二次安装看日志并没有任何问题,各项初始化看日志也是正常的,启动后直接访问即可。如果是对 [Warning] Aborted connection 9 to db: 'answer' user: 'root' host: '172.26.0.3' (Got an error reading communication packets) 有担心,不必担心,这是一个警告提示,是由于 docker-compose 的 depends_on 导致,它会不断的检测 mysql 是否正常启动,这只是由于还没有正常连接的一个提示信息,不会影响 answer 正常运行。

现在已经可以启动demo, 如图

image

notfresh avatar Nov 07 '22 06:11 notfresh

使用 docker-compose up启动的时候,最后的日志显示

answer1105-db-1      | 2022-11-05 15:39:40 9 [Warning] Aborted connection 9 to db: 'answer' user: 'root' host: '172.26.0.3' (Got an error reading communication packets)
answer1105-answer-1  | 2022-11-05 23:39:40.649	INFO	/go/src/github.com/answerdev/answer/internal/base/data/data.go:71	try to load cache file from /tmp/cache/cache.db
answer1105-answer-1  | 2022-11-05 23:39:40.659	WARN	/go/src/github.com/answerdev/answer/internal/base/data/data.go:73	open /tmp/cache/cache.db: no such file or directory
^@^@^@^@^@^@^@

让我以为遇到了啥问题,我后面再看下咋回事。

notfresh avatar Nov 07 '22 06:11 notfresh

We've just released a update of docker with a graphical installation interface, now it's easy to install.

我们刚发布了个带图形界面的安装程序版本,无需 docker-compose 就能运行了,可以再试试。

fenbox avatar Nov 11 '22 13:11 fenbox