Right guys,
I got rid of everything, holler-kit, docker containers (I think the termination process got rid of this), volumes and images.
I completely shutdown the computer (not restart), made sure I started up with no removable drives attached and made sure nothing that wasn’t needed was running (IDE’s, test environments and the like).
I then cloned hollaex-kit again in case there was some changes.
I cd’d into that directory in the terminal and started the setup like so:
my-prompt [EXCHANGE-NAME] % hollaex server --setup --force
I ran all the prompts (which all said they were successful) right through to the web client build and it gave this output:
my-prompt [EXCHANGE-NAME] % hollaex server --setup --force
Welcome to HollaEx Server Setup!
Select the network
Before you continue, You need to select the network that you want to use with the exchange.
HollaEx Kit by default, will be connected to the official public HollaEx Network (api-hollaex-network).
If you want to connect to a different network, please type the URL.
Do you want to want to continue with the official HollaEx Network? (Y/n)
y
{“name”:“HollaEx”,“version”:“2.2.15”,“host”:“api-hollaex-network”,“basePath”:"/v2"}
Successfully reached to the network health page.
api-hollaex-network
Create Admin
Please type your email address and password that you are going to use for your admin account.
Email:
[MY-EMAIL]
Password:
Create Exchange
Please type in the name of your new exchange.
- Alphanumeric, Dash (-), Underscore Only (_). No space or special character allowed.
[EXCHANGE-NAME]
[EXCHANGE-NAME]
Successfully initialized the exchange [EXCHANGE-NAME] and the account [MY-EMAIL].
Have fun!
Checking system dependencies…
You are good to go!
Target hollaex docker registry : bitholla/my-hollaex-server.
Building the user HollaEx Server image with user custom Kit setups.
[+] Building 2.0s (12/12) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 791B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 97B 0.0s
=> [internal] load metadata for docker-io/library/node:10.15.3-stretch-slim 1.7s
=> [auth] library/node:pull token for registry-1.docker-io 0.0s
=> [1/6] FROM docker-io/library/node:10.15.3-stretch-slim@sha256:5177e5de0e87965ed102f5a84856e31c1434e479dd0d90cf8df21d61284c78f1 0.0s
=> [internal] load build context 0.1s
=> => transferring context: 1.00MB 0.1s
=> CACHED [2/6] RUN apt-get update && apt-get install -y --no-install-recommends git python build-essential && rm -rf /var/lib/apt/lists/* && npm 0.0s
=> CACHED [3/6] COPY ./server /app 0.0s
=> CACHED [4/6] WORKDIR /app 0.0s
=> CACHED [5/6] RUN groupadd -g 999 appuser && useradd -r -u 999 -g appuser appuser && mkdir /home/appuser && chown -R appuser /home/appuser && 0.0s
=> CACHED [6/6] RUN npm install --loglevel=error && pm2 update && cd /app/mail && npm install --loglevel=error 0.0s
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:47303082f9a9925c1a85813eeba5e3e5d69e6da18712f612dccb73a68c24fc10 0.0s
=> => naming to docker-io/bitholla/my-hollaex-server:[EXCHANGE-NAME]-server-2.2.3-2111151208 0.0s
Use ‘docker scan’ to run Snyk tests against images to find vulnerabilities and learn how to fix them
Your custom HollaEx Server image has been successfully built.
Please type in your new image name. (bitholla/my-hollaex-server:[EXCHANGE-NAME]-server-2.2.3-2111151208)
Press enter to proceed with the previous name.
hx-server:[EXCHANGE-NAME]-server-2.2.3-2111151208
Do you want to proceed with this image name? (hx-server:[EXCHANGE-NAME]-server-2.2.3-2111151208) (Y/n)
y
Your new image name is: (hx-server:[EXCHANGE-NAME]-server-2.2.3-2111151208).
Do you want to push this image to your Docker Registry? (y/N) (Optional)
y
Pushing the image to docker registry…
The push refers to repository [docker-io/library/hx-server]
5a4aeb5e3568: Preparing
491a36ee3433: Preparing
5f70bf18a086: Preparing
720fa5a00f0e: Preparing
de5e0227c265: Preparing
0d81e4ab8480: Waiting
3f830d3299ef: Waiting
aa5a12ea4279: Waiting
6270adb5794c: Waiting
denied: requested access to the resource is denied
Failed to push the image to docker registry.
Proceeding setup processes without pushing the image at Docker Registry.
You can push it later by using ‘docker push’ command manually.
Please run 'hollaex apply --registry hx-server --tag [EXCHANGE-NAME]-server-2.2.3-2111151208 ’ to apply it on the server.
Generating random passwords for backends…
Generating random secrets…
docker-compose detected
version: Docker Compose version v2.1.1
Generating docker-compose file
[+] Running 23/23
⠿ [EXCHANGE-NAME]-nginx Pulled 100.4s
⠿ 6c40cc604d8e Pull complete 10.1s
⠿ 30c6e03cb91a Pull complete 23.4s
⠿ 105f03a3abdf Pull complete 23.5s
⠿ a492669e5fd8 Pull complete 23.6s
⠿ a49538cc2f3c Pull complete 97.5s
⠿ [EXCHANGE-NAME]-db Pulled 64.6s
⠿ 050382585609 Pull complete 4.1s
⠿ 9a0b1fe656d1 Pull complete 4.2s
⠿ c2a10a40dfa4 Pull complete 4.2s
⠿ e89610aa077e Pull complete 61.3s
⠿ 427e5accbd44 Pull complete 61.4s
⠿ 19e81aa016c9 Pull complete 61.5s
⠿ 82522ee5c462 Pull complete 61.6s
⠿ 9668dd24ba2d Pull complete 61.7s
⠿ 2abfbf1e0e59 Pull complete 61.7s
⠿ [EXCHANGE-NAME]-redis Pulled 69.7s
⠿ 801bfaa63ef2 Pull complete 46.1s
⠿ 9a8d0188e481 Pull complete 48.6s
⠿ 8a3f5c4e0176 Pull complete 54.4s
⠿ 51a20dbe2f6a Pull complete 66.7s
⠿ 0aacff13b8d7 Pull complete 66.8s
⠿ adc9264cf133 Pull complete 66.8s
[+] Running 7/7
⠿ Network local_[EXCHANGE-NAME]-network Created 0.2s
⠿ Container local-[EXCHANGE-NAME]-db-1 Started 1.5s
⠿ Container local-[EXCHANGE-NAME]-redis-1 Started 1.9s
⠿ Container local-[EXCHANGE-NAME]-server-api-1 Started 3.2s
⠿ Container local-[EXCHANGE-NAME]-server-plugins-1 Started 3.3s
⠿ Container local-[EXCHANGE-NAME]-server-stream-1 Started 3.3s
⠿ Container local-[EXCHANGE-NAME]-nginx-1 Started 4.2s
Preparing to initialize exchange database…
Running sequelize db:migrate
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Running database triggers
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Running sequelize db:seed:all
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Setting up the exchange with provided activation code
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Updating the secrets…
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Setting up the version number based on the current Kit.
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
[+] Running 6/6
⠿ Container local-[EXCHANGE-NAME]-db-1 Started 10.7s
⠿ Container local-[EXCHANGE-NAME]-redis-1 Started 0.8s
⠿ Container local-[EXCHANGE-NAME]-server-plugins-1 Started 1.2s
⠿ Container local-[EXCHANGE-NAME]-server-api-1 Started 10.7s
⠿ Container local-[EXCHANGE-NAME]-server-stream-1 Started 7.7s
⠿ Container local-[EXCHANGE-NAME]-nginx-1 Started 0.9s
Your exchange is all set!
Finishing the setup process…
Shutting down the exchange…
To start the exchange, Please use ‘hollaex start’ command
Skipping the command confirmation.
docker-compose detected
version: Docker Compose version v2.1.1
[+] Running 6/6
⠿ Container local-[EXCHANGE-NAME]-nginx-1 Stopped 0.3s
⠿ Container local-[EXCHANGE-NAME]-server-stream-1 Stopped 1.4s
⠿ Container local-[EXCHANGE-NAME]-server-plugins-1 Stopped 3.2s
⠿ Container local-[EXCHANGE-NAME]-server-api-1 Stopped 10.2s
⠿ Container local-[EXCHANGE-NAME]-redis-1 Stopped 0.2s
⠿ Container local-[EXCHANGE-NAME]-db-1 Stopped 0.2s
[TEXT GRAPHIC REMOVED — ON/OFF SWITCH]
Your Exchange has been stopped
Now It’s time to bring up the exchange online.
Run ‘hollaex server --start’ to start the exchange.
my-prompt [EXCHANGE-NAME] % hollaex server --start
Generating random secrets…
docker-compose detected
version: Docker Compose version v2.1.1
Generating env file for docker
Generating docker-compose file
Generating Nginx upstream conf
Updating nginx conf file based on user settings
[+] Running 6/6
⠿ Container local-[EXCHANGE-NAME]-db-1 Started 1.4s
⠿ Container local-[EXCHANGE-NAME]-redis-1 Started 2.3s
⠿ Container local-[EXCHANGE-NAME]-server-stream-1 Started 3.6s
⠿ Container local-[EXCHANGE-NAME]-server-plugins-1 Started 3.6s
⠿ Container local-[EXCHANGE-NAME]-server-api-1 Started 3.5s
⠿ Container local-[EXCHANGE-NAME]-nginx-1 Started 4.4s
[TEXT GRAPHIC REMOVED — TICK]
Your Exchange is up!
Try to reach localhost/v2/health
You can easily check the exchange status with 'hollaex status'.
You can proceed to setup the web server with 'hollaex web --setup'.
my-prompt [EXCHANGE-NAME] % hollaex status
749d4b87c6af bitholla/nginx-with-certbot:1.15.8 “/bin/sh -c 'ip -4 r…” About a minute ago Up About a minute 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp local-[EXCHANGE-NAME]-nginx-1
9f83299fa0d5 hx-server:[EXCHANGE-NAME]-server-2.2.3-2111151208 “node plugins.js 100…” About a minute ago Restarting (1) 6 seconds ago local-[EXCHANGE-NAME]-server-plugins-1
bcd8220d7aaf hx-server:[EXCHANGE-NAME]-server-2.2.3-2111151208 “node app.js” About a minute ago Up About a minute 0.0.0.0:10010->10010/tcp, 10080/tcp local-[EXCHANGE-NAME]-server-api-1
0ca3566235c2 hx-server:[EXCHANGE-NAME]-server-2.2.3-2111151208 “node ws/index.js” About a minute ago Restarting (1) 9 seconds ago local-[EXCHANGE-NAME]-server-stream-1
9ab8e8269d52 redis:6.0.9-alpine “docker-entrypoint.s…” About a minute ago Up About a minute 0.0.0.0:6379->6379/tcp local-[EXCHANGE-NAME]-redis-1
f5dd610a98da postgres:10.9-alpine “docker-entrypoint.s…” About a minute ago Up About a minute 0.0.0.0:5432->5432/tcp local-[EXCHANGE-NAME]-db-1
Calling the exchange health page (localhost/v2/health) …
502 Bad Gateway
502 Bad Gateway
nginx/1.15.8
Successfully reached to the health page.
my-prompt [EXCHANGE-NAME] % hollaex web --setup
Building the user HollaEx Web image.
Generating .env for Web Client
[+] Building 474.1s (20/20) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 849B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [internal] load metadata for docker-io/library/nginx:1.16.0-alpine 1.7s
=> [internal] load metadata for docker-io/library/node:12.18.3-buster 1.7s
=> [auth] library/nginx:pull token for registry-1.docker-io 0.0s
=> [auth] library/node:pull token for registry-1.docker-io 0.0s
=> [build 1/6] FROM docker-io/library/node:12.18.3-buster@sha256:760bbf2dcfb6c1034772fb31a11f8fc63b665c131e4df0a7d74b15063e4a43a9 0.0s
=> [stage-1 1/6] FROM docker-io/library/nginx:1.16.0-alpine@sha256:270bea203d2fc3743fb9ce0193325e188b7e6233043487e3d3cf117ea4d3f337 0.0s
=> [internal] load build context 2.0s
=> => transferring context: 55.54MB 2.0s
=> CACHED [build 2/6] WORKDIR /app 0.0s
=> CACHED [build 3/6] COPY package.json /app/package.json 0.0s
=> CACHED [build 4/6] RUN npm config set unsafe-perm true && npm install -g node-gyp && npm install --loglevel=error 0.0s
=> [build 5/6] COPY . /app 0.4s
=> [build 6/6] RUN npm run build 461.7s
=> CACHED [stage-1 2/6] RUN apk add --update curl && rm -rf /var/cache/apk/* 0.0s
=> [stage-1 3/6] COPY --from=build /app/build /usr/share/nginx/html 0.5s
=> [stage-1 4/6] RUN rm /etc/nginx/conf.d/default.conf 0.3s
=> [stage-1 5/6] COPY docker/nginx.conf /etc/nginx/conf.d 0.1s
=> [stage-1 6/6] RUN chown -R nginx:nginx /var/cache/nginx && chown -R nginx:nginx /var/log/nginx && chown -R nginx:nginx /etc/nginx/conf.d && to 0.4s
=> exporting to image 0.7s
=> => exporting layers 0.7s
=> => writing image sha256:0bc88277ad54d959ee52d4d7a34b2d394a921212920f4fbac344ecdb9e0fdee5 0.0s
=> => naming to docker-io/bitholla/my-hollaex-web:[EXCHANGE-NAME]-web-2.2.3-2111151231 0.0s
Use ‘docker scan’ to run Snyk tests against images to find vulnerabilities and learn how to fix them
Your custom HollaEx Web image has been successfully built.
Please type in your new image name. (bitholla/my-hollaex-web:[EXCHANGE-NAME]-web-2.2.3-2111151231)
Press enter to proceed with the previous name.
y
Do you want to proceed with this image name? (y:y) (Y/n)
y
Your new image name is: y:y.
Do you want to push this image to your Docker Registry? (y/N)
y
Pushing the built image to the Docker Registry…
Pushing the image to docker registry…
The push refers to repository [docker-io/library/y]
8fe2e675496f: Preparing
542cf8f6220c: Preparing
c0a1d304652e: Preparing
dbdaf5d7360d: Preparing
cac8381239e6: Preparing
2bdf88b2699d: Waiting
f1b5933fe4b5: Waiting
denied: requested access to the resource is denied
Failed to push the image to docker registry.
Proceeding setup processes without pushing the image at Docker Registry.
You can push it later by using ‘docker push’ command manually.
docker-compose detected
version: Docker Compose version v2.1.1
Generating web docker-compose file
Generating web .env file
Generating web Nginx configuration file
Generating web Nginx upstream file
Updating main Nginx.conf based on user settings…
[+] Running 1/1
⠿ Container client-[EXCHANGE-NAME]-web-1 Started 0.6s
Reloading Nginx…
nginx: [emerg] host not found in upstream “[EXCHANGE-NAME]-server-stream:10080” in /etc/nginx/conf.d/upstream.conf:6
Failed to reload Nginx. Please make sure to start the exchange API server first.
The web server could be still reachable through ‘localhost:8080’,
But the allocated domain for the web would not function correctly.
Skipping the command confirmation.
Generating web docker-compose file
[+] Running 1/1
⠿ Container client-[EXCHANGE-NAME]-web-1 Stopped 0.2s
Successfully stopped the web server.
To bring it up, Please run ‘hollaex web --start’ command.
[TEXT GRAPHIC REMOVED — TICK]
Web Server for your exchange has been setup and prepared.
Please run 'hollaex web --start ’ to bring the web server up!
my-prompt [EXCHANGE-NAME] % hollaex web --start
docker-compose detected
version: Docker Compose version v2.1.1
Generating web docker-compose file
Updating main Nginx.conf based on user settings…
[+] Running 1/1
⠿ Container client-[EXCHANGE-NAME]-web-1 Started 0.5s
Reloading Nginx…
nginx: [emerg] host not found in upstream “[EXCHANGE-NAME]-server-stream:10080” in /etc/nginx/conf.d/upstream.conf:6
Failed to reload Nginx. Please make sure to start the exchange API server first.
The web server could be still reachable through ‘localhost:8080’,
But the allocated domain for the web would not function correctly.
[TEXT GRAPHIC REMOVED — TICK]
Web Client for your exchange is ready!
Try to reach yourdomain-com or localhost:8080
my-prompt [EXCHANGE-NAME] %
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
NOTICE THE ERRORS (are they errors or not because the script says: : Your exchange is all set!
Yet the following looks concerning
Preparing to initialize exchange database…
Running sequelize db:migrate
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Running database triggers
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Running sequelize db:seed:all
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Setting up the exchange with provided activation code
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Updating the secrets…
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Setting up the version number based on the current Kit.
Error: No such container: local_[EXCHANGE-NAME]-server-api_1
Nevertheless, you can also see that I ran a status check with
My-prompt % holler status
And I found that two containers are restarting seconds ago while the others are all up about a minute.
Here’s the docker logs (same two containers failing, stream-1 and plugins-1)
Stream-1 logs:
Mon, 15 Nov 2021 14:05:01 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at docs-sequelizejs-com/manual/tutorial/querying.html#operators at node_modules/sequelize/lib/sequelize.js:242:13
{“message”:"Ẃebsocket server listening on port: 10080 ",“level”:“verbose”,“timestamp”:“2021-11-15T14:05:01.600Z”}
{“level”:“verbose”,“message”:“init/checkStatus checking exchange status”,“timestamp”:“2021-11-15T14:05:01.611Z”}
{“message”:"Connect to PubSub ",“level”:“verbose”,“timestamp”:“2021-11-15T14:05:01.633Z”}
{“message”:"Connect to redis ",“level”:“verbose”,“timestamp”:“2021-11-15T14:05:01.637Z”}
{“message”:"Authenticated to PubSub ",“level”:“verbose”,“timestamp”:“2021-11-15T14:05:01.643Z”}
{“message”:"PubSub is ready ",“level”:“info”,“timestamp”:“2021-11-15T14:05:01.644Z”}
{“message”:"Authenticated to redis ",“level”:“verbose”,“timestamp”:“2021-11-15T14:05:01.648Z”}
{“message”:"Redis is ready ",“level”:“info”,“timestamp”:“2021-11-15T14:05:01.648Z”}
{“level”:“error”,“message”:“ws/hub/connect/checkStatus Error relation “Statuses” does not exist”,“timestamp”:“2021-11-15T14:05:01.694Z”}
Plugins-1 logs:
Mon, 15 Nov 2021 14:05:33 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at docs-sequelizejs-com/manual/tutorial/querying.html#operators at node_modules/sequelize/lib/sequelize.js:242:13
Mon, 15 Nov 2021 14:06:40 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at docs-sequelizejs-com/manual/tutorial/querying.html#operators at node_modules/sequelize/lib/sequelize.js:242:13
{“level”:“verbose”,“message”:“init/checkStatus checking exchange status”,“timestamp”:“2021-11-15T14:06:41.596Z”}
{“message”:"Connect to PubSub ",“level”:“verbose”,“timestamp”:“2021-11-15T14:06:41.613Z”}
{“message”:"Connect to redis ",“level”:“verbose”,“timestamp”:“2021-11-15T14:06:41.616Z”}
{“message”:"Authenticated to PubSub ",“level”:“verbose”,“timestamp”:“2021-11-15T14:06:41.619Z”}
{“message”:"PubSub is ready ",“level”:“info”,“timestamp”:“2021-11-15T14:06:41.620Z”}
{“message”:"Authenticated to redis ",“level”:“verbose”,“timestamp”:“2021-11-15T14:06:41.621Z”}
{“message”:"Redis is ready ",“level”:“info”,“timestamp”:“2021-11-15T14:06:41.622Z”}
{“level”:“error”,“message”:“plugins/checkStatus Error relation “Statuses” does not exist”,“timestamp”:“2021-11-15T14:06:41.651Z”}
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
What is Statuses and where is it? Is this my error or the scripts error?
Now that this has failed for the 7th or 8th time I’m going to go backwards to version 2.2.1 and see if I can get that built again and this time not forget the password 2 minutes after creating it.
Please have a good sift through that output and let me know if you see anything problematic that I can fix my end. I really want to get to the bottom of this saga and learn about the fabulous exchange you guys have built.
For all intents and purposes the problem and errors are exactly the same as the last output from a fresh build.
BTW. I’m running out of email addresses, can you fix that issue? Each time I terminate I have to use a new email address. Or if you can see when an exchange has been terminated, terminate the admin email along with it so that it can be used again as new.
Thanks