2026년 2분기 관리자 선출이 진행 중입니다. 자세한 내용은 최근 토론을 참고하세요.
r10
r1

(새 문서)
1[[분류:the tree]]
2[include(틀:상위 문서, 문서=the tree)]
r10
3
r1

(새 문서)
4[목차]
5== 시작하기 전에 ==
6Termux를 사용하기에 당연히 Android 여야하며, 이하 조건을 만족해야 정상적인 구동이 가능하다. 또한 포트포워딩이 필수이지만, 불가능할 경우 ngrok 을 사용해야한다.
7
r10
8 * Android 9 이상[* 다를 수도 있으나 Termux 최소 지원 버전을 만족해야한다.]
r4
9 * 4GB 이상의 메모리 용량[* 더 적어도 상관은 없으나 안정성은 책임지지 않는다.]
10 * 최소 8GB 이상의 여유 디스크 용량[* Termux proot, 일부 패키지, db 등을 어림잡아 계산.]
r1

(새 문서)
11
r7
12또한 Android 12 이상일 경우, 특정 프로세스의 자식 프로세스 개수가 최대에 도달할 경우 강제 종료하는 기능이 있어, 해당 기능을 비활성화해야한다. [[https://blex.me/@baealex/how-to-fix-termux-process-completed-signal-9|#]]
r1

(새 문서)
13
14== 시작 ==
15=== proot ===
r10
16Termux 자체는 완전한 Linux 가 아니기 때문에 proot 를 설치하는 것이 권장된다.
r1

(새 문서)
17{{{pkg update -y && pkg install wget curl proot tar -y && wget https://raw.githubusercontent.com/AndronixApp/AndronixOrigin/master/Installer/Ubuntu22/ubuntu22-xfce.sh -O ubuntu22-xfce.sh && chmod +x ubuntu22-xfce.sh && bash ubuntu22-xfce.sh
18}}}
r2
19
20이후 proot 환경에 접속하려면 './start-ubuntu22.sh'를 입력하면 된다.
r10
21
r1

(새 문서)
22=== 패키지 설치 ===
23패키지
r5
24{{{apt install nano wget curl git python3
r1

(새 문서)
25}}}
26Node.js 22 arm64 설치
27{{{apt-get uninstall nodejs
28wget "https://nodejs.org/dist/v22.11.0/node-v22.11.0-linux-arm64.tar.gz"
29tar -xvf "node-v22.11.0-linux-arm64.tar.gz"
30cp "node-v22.11.0-linux-arm64" "/etc/node22.11.0" -r
31ln -s "/etc/node22.11.0/bin/node" /usr/bin/node
32ln -s "/etc/node22.11.0/bin/npm" /usr/bin/npm
33}}}
34mongodb 설치
35{{{apt-get install gnupg
36curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \
37 gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \
38 --dearmor
39echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/8.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-8.0.list
40apt-get update
41apt-get install -y mongodb-org}}}
r8
42'mongod' 를 입력했을 경우, illegal instruction 이 뜬다면 하위 illegal instruction 문단을 확인하길 바란다.
r1

(새 문서)
43
44nginx 설치[* https 지원을 위해 필요]
45{{{apt-get install nginx
r5
46}}}
47
48=== 설치 ===
49아래 과정은 [[the tree/설치 방법]] 또는 [[the tree/위키 구축]] 과 비슷할수도 있으니 참고바란다.
50
51더트리 clone
r6
52{{{git clone https://github.com/wjdgustn/thetree --recurse-submodules
r5
53cd thetree}}}
r10
54이후 nano 등 편집기를 이용해서 .env[* Android 는 1023번 이하 포트를 열지 못하게 하기 때문에 80, 443 등의 포트가 아닌 8080, 8443 등으로 바꾸기를 추천한다.], publicConfig.json, stringConfig.json, serverConfig.json, devConfig.json 을 채워넣는다.
r5
55
56node.js 모듈 설치
r6
57{{{npm i
58}}}
r5
59meilisearch 설치
r6
60{{{curl -L https://install.meilisearch.com | sh
61}}}
r10
62
r8
63== 실행 ==
64Termux 는 여러 창을 킬수 있기 때문에 각 창마다 해당 프로그램을 실행시키면 된다.[* 화면 왼쪽 측면을 스와이프-New Session]
r10
65
r8
66=== mongodb ===
67Proot 환경이기 때문에 오류가 날수도 있어서 dbpath 를 지정해주는 것이 좋다.
68
69thetree 폴더에서
70{{{
71mkdir DB
72mongod --dbpath DB}}}
73'mongod --dbpath DB' 는 mongodb를 실행하니 명령어이니 꺼졌을때 다시 입력하기만 하면 된다.
r10
74
r8
75==== illegal instruction ====
76해당 오류가 발생할 경우, Proot 가 아닌 Termux 에서 아래 명령어를 실행시켜 설치한다.
77{{{wget https://its-pointless.github.io/setup-pointless-repo.sh
78sh setup-pointless-repo.sh
79pkg upgrade && pkg update
80pkg install mongodb
81mkdir -p $PREFIX/data/db
82mkdir $PREFIX/var/log/mongodb
83touch $PREFIX/var/log/mongodb/mongodb.log}}}
84이후 똑같이 mongod 를 실행하면 된다.
r10
85
r8
86=== meilisearch ===
87호환성에는 문제가 없기 때문에 아래 명령어로 실행할 수 있다.
88{{{./meilisearch --master-key="aSampleMasterKey"
89}}}